- For using Prisma as an end point you should signup to prisma and deploy your server. If you want to read more about deploying (check out the prisma docs)
PRISMA_URL="PRISMA_URL="https://eu1.prisma.sh/your-workspace/yourendpoint/dev"
PORT=4000
Here is the example of a .graphqlconfig.yml file that specifies that:
- Prisma GraphQL schema should be stored in a file called generated/prisma.graphql
- Also the corresponding TypeScript type definitions should be written to a file called generated/prisma.ts
.graphqlconfig.yml should have the below code to generate prisma.ts file:
projects:
app:
schemaPath: src/schema.graphql
extensions:
endpoints:
default: http://localhost:4000
prisma:
schemaPath: src/generated/prisma.graphql
extensions:
prisma: database/prisma.yml
prepare-binding:
output: src/generated/prisma.ts
generator: prisma-ts
-
Nest is a framework for building efficient, scalable Node.js server-side applications. It uses progressive JavaScript, is built with TypeScript (preserves compatibility with pure JavaScript) and combines elements of OOP (Object Oriented Programming), FP (Functional Programming), and FRP (Functional Reactive Programming). NestJS reduces the process involved in setting up a nodejs server.
-
We already have the GraphQLModule in NestJS that is nothing more than a wrapper around the Apollo server. We don't reinvent the wheel but provide a ready to use a module instead, that brings a clean way to play with the GraphQL and Nest together. NestJS Framework has inbuilt support of Apollo Server 2 which is awesome :)
$ npm install
# login to prisma
$ npm run prisma login
# deploy prisma database
$ npm run prisma deploy
# generate prisma
$ npm run prisma generate
# generate graphql resolvers from schema.graphql
$ npm run resolver-codegen
# development
$ npm run start
# watch mode
$ npm run start:dev
# production mode
npm run start:prod
# nestjs rest endpoint
localhost:3000
# graphql and playground endpoint
localhost:3000/graphql
Deploying server on now.sh
- Below is the server endpoint deployed on now
https://graphql-boilerplate-server-wqrtiyktjn.now.sh/graphql
- Authentication (JWT)
- [O] Authentication (Passport)
- [O] Authentication (Session)
- Prisma Graphql
- Apollo Server 2
- Realtime subscription
- Prisma Graphql
- [O] File upload via rest
- [O] File upload via graphql
- [O] Redis support