Some questions about GraphQL and Absinthe

Technical question to get my head around this. If I used GraphQL on front end with VueJS and and Absinthe with elixir and Pheonix on the back end… Does this mean that I will not need ecto to interact with the database anymore as all the queries will be handled by graphql API?

Which brings us to the second question. If the first assumption is true it means that I finally have a safe way to interact with more databases than the officially supported ones (Postgresql, MySQL, and SQlite). In other words this might be a safe way to interact with MongoDB if I choose to?

  1. no
    Absinthe uses Ecto to query data internally, while it’s not mandatory, Absinthe could use anything that can be resolved, But in most case, You will have to define how the system resolves data.

  2. no
    I think You miss the point of GraphQL, it is not meant to be a DB Driver, it is a query language for your API.

GraphQL on front end

You need to use a client, either Apollo, or Relay Modern.

interact with MongoDB

The original implementation is made in Javascript… You will find plenty of tutorial using Node, GraphQL and MongoDB. Maybe Neo4j would be the best fit for Graph database.

5 Likes