cd client
npm start
cd server
docker-compose up -d && npm run start
Edit prisma/dataodel.prisma
then
prisma deploy
Navigate to http://localhost:4000 in your browser to explore the API of your GraphQL server in a GraphQL Playground.
The schema that specifies the API operations of your GraphQL server is defined in ./src/schema.graphql
. Below are a number of operations that you can send to the API using the GraphQL Playground.
Feel free to adjust any operation by adding or removing fields. The GraphQL Playground helps you with its auto-completion and query validation features.
query {
feed {
id
title
content
published
author {
id
name
email
}
}
}
See more API operations
mutation {
signupUser(
name: "Sarah"
email: "[email protected]"
) {
id
}
}
mutation {
createDraft(
title: "Join the Prisma Slack"
content: "https://slack.prisma.io"
authorEmail: "[email protected]"
) {
id
published
}
}
mutation {
publish(id: "__POST_ID__") {
id
published
}
}
Note: You need to replace the
__POST_ID__
-placeholder with an actualid
from aPost
item. You can find one e.g. using thefilterPosts
-query.
{
filterPosts(searchString: "graphql") {
id
title
content
published
author {
id
name
email
}
}
}
{
post(id: "__POST_ID__") {
id
title
content
published
author {
id
name
email
}
}
}
Note: You need to replace the
__POST_ID__
-placeholder with an actualid
from aPost
item. You can find one e.g. using thefilterPosts
-query.
mutation {
deletePost(id: "__POST_ID__") {
id
}
}
Note: You need to replace the
__POST_ID__
-placeholder with an actualid
from aPost
item. You can find one e.g. using thefilterPosts
-query.
After you made changes to schema.graphql
, you need to update the generated types in ./src/generated/graphqlgen.ts
and potentially also adjust the resolver implementations in ./src/resolvers
:
yarn generate
This invokes graphqlgen
and updates ./src/generated/graphqlgen.ts
to incorporate the schema changes in your TS type definitions. It also generates scaffolded resolvers in ./src/generated/tmp/resolvers
that you might need to copy and paste into ./src/resolvers
.