Skip to content

Modified boilerplate code from graphql-boilerplates to use apollo-server-express instead of graphql-yoga

Notifications You must be signed in to change notification settings

lnmunhoz/typescript-graphql-apollo-server

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CircleCI

Boilerplate for an Advanced GraphQL Server w/ TypeScript


🚀 Bootstrap your GraphQL server within seconds
Advanced starter kit for a flexible GraphQL server for TypeScript - based on best practices from the GraphQL community.

Features

  • Scalable GraphQL server: The server uses apollo-server-express
  • Static type generation: TypeScript types for GraphQL queries & mutations are generated in a build step and graphql-code-generator for generating types for resolvers
  • Authentication: Signup and login workflows are ready to use for your users
  • GraphQL database: Includes GraphQL database binding to Prisma (running on MySQL)
  • Tooling: Out-of-the-box support for GraphQL Playground & query performance tracing
  • Extensible: Simple and flexible data model – easy to adjust and extend
  • No configuration overhead: Preconfigured graphql-config setup
  • Realtime updates: Support for GraphQL subscriptions

Read more about the idea behind GraphQL boilerplates here.

Getting started

# 1. Install dependencies
yarn install

# 2. Run the server
yarn start

Documentation

Commands

  • yarn start starts GraphQL server on http://localhost:4000
  • yarn prisma:deploy Deploys the Prisma service to the cluster
  • yarn prisma:reset Resets the database
  • yarn prisma:seed Seed the database with data found in prisma/seed.graphql
  • yarn codegen Generate resolver types based on the src/schema.graphql

Project structure

File name                Description         

├── .env Defines environment variables
└── database (directory) Contains all files that are related to the Prisma database service
├── prisma.yml The root configuration file for your Prisma database service (docs)
└── datamodel.graphql Defines your data model (written in GraphQL SDL)
└── src (directory) Contains the source files for your GraphQL server
├── index.ts The entry point for your GraphQL server
├── schema.graphql The application schema defining the API exposed to client applications
├── resolvers (directory) Contains the implementation of the resolvers for the application schema
└── generated (directory) Contains generated files
└── prisma-client (directory) The generated Prisma client

Contributing

The GraphQL boilerplates are maintained by the GraphQL community, with official support from the Apollo & Prisma teams.

Your feedback is very helpful, please share your opinion and thoughts! If you have any questions or want to contribute yourself, join the #graphql-boilerplate channel on our Slack.

About

Modified boilerplate code from graphql-boilerplates to use apollo-server-express instead of graphql-yoga

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published