This is my starter-pack for a Node.js based GraphQL server.
This project is structured in a modular way:
app
: contains a Feathers.js application. Why Feathers? Because it's great for fetching data from different databases via adapters. It also has an amazing concept of hooks and is well-typed.definitions
: contains Typescript declaration files.env
: contains environmental variablesnamed
: reexports things from type-graphql, mongoose and typegoose with nice naming. Why is it needed? Because they all have similar things, and it's extremely easy to get confused.server
: contains an Apollo serverutils
: contains utilsmodels
: contains both type-graphql and typegoose modelsapi
: contains GraphQL resolvers