[GraphQL] Deploy a GraphQL dev playground with graphql-up
In this lesson we'll use a simple GraphQL IDL schema to deploy and explore a fully functional GraphQL service in minutes with graphql-up.
Install:
npm i -g graphql-up -g
Create schema:
type Person { id: ID!, name: String!, tasks: [Task!]! @relation(name: "PersonTask") } type Task { id: ID!, description: String! person: Person @relation(name: "PersonTask") }
Run:
graphql-up tasks.schema
It will generate two url for use, just grap one. It will open graphcool.
We can query the data:
{
allPersons {
id,
name,
tasks {
id,
description
}
}
}
We won't get any, because we haven't create anything.
Create some mock data:
mutation { createPerson(name:"Zhentian") { id, name } } // get back "data": { "createPerson": { "id": "cj2t31akybh3g01184klolj0t", "name": "Zhentian" } } }
Now if query again:
{ allPersons { id, name, tasks { id, description } } } // get back "data": { "allPersons": [ { "id": "cj2t31akybh3g01184klolj0t", "name": "Zhentian", "tasks": [] } ] } }
Create data for task:
mutation { createTask(description: "Learn GraphQL", personId: "cj2t31akybh3g01184klolj0t") { id, description } } // get back "data": { "createTask": { "id": "cj2t37fo7kizn0102kf9otzh5", "description": "Learn GraphQL" } } }
When we do the query again:
{ allPersons { id, name, tasks { id, description } } } // get back "data": { "allPersons": [ { "id": "cj2t31akybh3g01184klolj0t", "name": "Zhentian", "tasks": [ { "id": "cj2t37fo7kizn0102kf9otzh5", "description": "Learn GraphQL" } ] } ] } }
Create Task and Person in same mutation:
mutation { createPerson(name:"Wan", tasks:[ {description: "Learn Recompose"}, {description: "Learn SCSS"} ]) { id, name } }
After done with playground, can click "Generate code". Select Node env:
Install:
npm install lokka lokka-transport-http --save
Copy the code to index.js file, we should be able to run the code and get data back.
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具
2016-05-17 [CSS3] Using CSS Combinators to Identify Siblings and Descendants in CSS
2016-05-17 [Javascript] Logging Pretty-Printing Tabular Data to the Console
2016-05-17 [Javascrip] Logging Timing Data to the Console
2016-05-17 [PWA] 10. Trigger a version update
2016-05-17 [PWA] 9. Service worker registerion && service work's props, methods and listeners
2015-05-17 [R] Draw a wordcloud