summaryrefslogtreecommitdiffstats
path: root/backend/src/createServer.js
diff options
context:
space:
mode:
authorWes Bos <wesbos@gmail.com>2018-03-20 21:52:36 -0400
committerWes Bos <wesbos@gmail.com>2018-03-20 21:52:36 -0400
commit93495ce146c4e81ecfab3a0bca99460e75a759da (patch)
tree12b2de283a017ff6cc53c1175371f9add84238d2 /backend/src/createServer.js
parent92f612a995c54f7423bd2b760fb1a324044693a6 (diff)
tests
Diffstat (limited to 'backend/src/createServer.js')
-rw-r--r--backend/src/createServer.js30
1 files changed, 30 insertions, 0 deletions
diff --git a/backend/src/createServer.js b/backend/src/createServer.js
new file mode 100644
index 0000000..57518b2
--- /dev/null
+++ b/backend/src/createServer.js
@@ -0,0 +1,30 @@
+const { GraphQLServer } = require('graphql-yoga');
+const { Prisma } = require('prisma-binding');
+require('dotenv').config();
+
+const Mutation = require('./resolvers/Mutation');
+const Query = require('./resolvers/Query');
+const AuthPayload = require('./resolvers/AuthPayload');
+
+function createServer() {
+ return new GraphQLServer({
+ typeDefs: 'src/schema.graphql',
+ resolvers: {
+ // detail resolvers
+ Mutation,
+ Query,
+ AuthPayload,
+ },
+ context: req => ({
+ ...req,
+ db: new Prisma({
+ typeDefs: 'src/generated/prisma.graphql',
+ endpoint: process.env.PRISMA_ENDPOINT, // the endpoint of the Prisma DB service (value is set in .env)
+ secret: process.env.PRISMA_SECRET, // taken from database/prisma.yml (value is set in .env)
+ debug: false, // log all GraphQL queries & mutations
+ }),
+ }),
+ });
+}
+
+module.exports = createServer;