Node.js, Koa, GraphQL and TypeScript template project.
Batteries and opinions included 🙌
- 
Docker 🐳 configuration for production deployment, development and testing 
- 
GraphQL tools: - GraphiQL
- GraphQL Voyager
- GraphQL Playground
- GraphQL IDL
- Apollo Tracing
 
- 
Reference GraphQL Models and Connectors architecture implementation 
- 
CORS middleware 
- 
12 Factor Configuration with .env
- 
Configurable logging - powered by winston
 
- powered by 
- 
Supercharged Development Mode - Incremental TypeScript builds
- Automatic server restart on changes
- Linting
 
- 
Testing - Unit tests
- Integration tests for GraphQL schema
 
- 
Reporting - Test result export to JUnit format
- Coverage result export to Cobertura format
 
- node>= 8.1.4 &- yarn
or
- Docker>= 17.05
- yarn: $ yarn
- Docker: $ docker-compose up
- yarn: $ yarn start
- Docker: $ docker-compose up --build
Attention Windows users: when Docker for Windows is not an option, install yarn and run $ yarn && yarn docker-mount beforehand.
$ yarn gqlgen
single test run
$ yarn test:unit
$ yarn test:integration
$ yarn test
Run the app or point E2E_TEST_URL to a remote instance you want to test against.
$ yarn test:e2e
Set environment variable CI to true to generate coverage reports.
In *nix:
CI=true yarn test
In Windows:
set CI=true&&yarn test
$ yarn build or $ docker build .
- 
TypeScript 
- 
Koa 
- 
GraphQL 
- 
Jest 
- 
winston 
- 
Docker