index.js 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. /**
  2. * Configure dotenv:
  3. * https://www.npmjs.com/package/dotenv
  4. *
  5. * Configure CORS for use with localhost.
  6. */
  7. require('dotenv').config()
  8. const { GraphQLServer } = require('graphql-yoga')
  9. const cookieParser = require('cookie-parser')
  10. const bodyParser = require('body-parser')
  11. // const cors = require("cors");
  12. const { merge } = require('lodash')
  13. const { db, populateUser } = require('./src/db')
  14. // const { authenticate } = require('./src/authenticate')
  15. const prismaResolvers = require('./src/resolvers')
  16. const resolvers = merge(prismaResolvers.resolvers)
  17. const typeDefs = ['./schema.graphql']
  18. const server = new GraphQLServer({
  19. typeDefs,
  20. resolvers,
  21. context: req => ({
  22. ...req,
  23. db,
  24. debug: true
  25. })
  26. })
  27. server.express.use(cookieParser())
  28. server.express.use(bodyParser.json())
  29. // server.express.use(quickMiddleware)
  30. // server.express.use(authenticate)
  31. server.express.use(populateUser)
  32. /* server.express.use(
  33. cors({ origin: process.env.FRONTEND_URL, credentials: false })
  34. ); */
  35. // server.express.use("/static", express.static("static"));
  36. server.start(
  37. /* {
  38. cors: {
  39. credentials: false,
  40. origin: process.env.FRONTEND_URL
  41. }
  42. }, */
  43. server => console.log(`Server is running on http://localhost:${server.port}`)
  44. )