Files
Clase 1
Clase 2
Clase 3
Clase 4
Clase 5
Clase 6
Ejercicio
server-graphql
.vscode
config
src
.babelrc
.dockerignore
.env.development
.env.example
.eslintignore
.eslintrc.js
.gitignore
Dockerfile
LICENSE
PRNameGenerator.ts
README.md
jest.config.js
package-lock.json
package.json
tsconfig.json
webpack.config.dev.ts
webpack.config.ts
00-namespace.yaml
01-configmap.yaml
02-secret.yaml
03-service.yaml
04-db-svc.yaml
05-deployment.yaml
06-mongodb-stayfullset.yaml
README.md
img
LICENSE
README.md
2022-10-10 22:52:40 -06:00
..
2022-10-10 22:52:40 -06:00
2022-10-10 22:52:40 -06:00
2022-10-10 22:52:40 -06:00
2022-10-10 22:52:40 -06:00
2022-10-10 22:52:40 -06:00
2022-10-10 22:52:40 -06:00
2022-10-10 22:52:40 -06:00
2022-10-10 22:52:40 -06:00
2022-10-10 22:52:40 -06:00
2022-10-10 22:52:40 -06:00
2022-10-10 22:52:40 -06:00
2022-10-10 22:52:40 -06:00
2022-10-10 22:52:40 -06:00
2022-10-10 22:52:40 -06:00
2022-10-10 22:52:40 -06:00
2022-10-10 22:52:40 -06:00
2022-10-10 22:52:40 -06:00
2022-10-10 22:52:40 -06:00
2022-10-10 22:52:40 -06:00
2022-10-10 22:52:40 -06:00

Create Node TS GraphQL Server

This project aims to have a starter kit for creating a new Node with typescript, GraphQL server and tools that generally go along with it.

Tech(Library or Framework) Version
Jest (Testing) 29.0.3
Typescript 4.8.3
GraphQL 16.6.0

Setup

To create a new project run in the terminal:

npx @aleleba/create-node-ts-graphql-server server-app-name

Then run:

cd server-app-name

You will need to create a new .env file at the root of the project for global config. This is an example of config.

#ENVIRONMENT Defauld production
ENVIRONMENT=development
#WHITELIST URLS Default to http://localhost
WHITELIST_URLS=https://someurl.com
#GRAPHIQL Default to "false"
GRAPHIQL=true
#PLAYGROUND GRAPHQL Default to "false"
PLAYGROUND_GRAPHQL=true
# PORT EXPOSE APP Default to 4000
PORT=4000

The default environment is production, the server-app port defauld is 4000, the default whitelist is http://localhost and the default graphiql is false.

For Development

In the terminal run:

npm run start:dev

The ENV enviroment variable should be "development" and choose the port of your preference with the enviroment variable PORT.

You will find the controllers on:

scr/controllers/

You will find the models on:

scr/models

You will find the GraphQL server, resolvers and schema definition on:

scr/GraphQL

The manage of the routes for custom API you should find on:

scr/routes

This will start the app in development mode, also use nodemon and webpack to real time coding! Enjoy coding!

For Production

In the terminal run:

npm run build

It will create a build folder and run:

npm start

This will start the app.

Cheers

Hope you enjoy this proyect! Sincerely Alejandro Lembke Barrientos.