• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

sudograph/sudograph: GraphQL database for the Internet Computer

原作者: [db:作者] 来自: 网络 收藏 邀请

开源软件名称(OpenSource Name):

sudograph/sudograph

开源软件地址(OpenSource Url):

https://github.com/sudograph/sudograph

开源编程语言(OpenSource Language):

HTML 53.8%

开源软件介绍(OpenSource Introduction):

Sudograph

Sudograph is a GraphQL database for the Internet Computer (IC).

Its goal is to become the simplest way to develop applications for the IC. Developers start by defining a GraphQL schema using the GraphQL SDL. Once the schema is defined, it can be included within a canister and deployed to the IC. An entire relational database is generated from the schema, with GraphQL queries and mutations enabling a variety of CRUD operations, including advanced querying over relational data.

Sudograph should be considered somewhere between alpha and beta software.

Documentation

For full documentation, see The Sudograph Book, which is hosted entirely on the IC by the way.

Super quick start

mkdir my-new-project
cd my-new-project
npx sudograph
dfx start --background
dfx deploy

Once deployed, you can visit the following canisters from a Chromium browser:

If the above didn't work, try The Sudograph Book.

Major limitations

  • No custom scalars, only Blob, Boolean, Date, Float, ID, Int, JSON, and String are available
  • No custom input objects, only custom input scalars allowed in custom resolvers
  • Each schema is limited to a single canister with ~4 GB of storage
  • Very inneficient querying
  • No automatic migrations, once you deploy the schema is final unless you implement your own migrations
  • No authorization at the schema level, deal with it through your own custom authorization at the canister function level
  • No automated tests
  • No subscriptions
  • No transactions

Concrete roadmap

The following are very likely to be implemented by Sudograph in the short to medium term future:

  • Robust automated tests
  • Efficient querying i.e. indexes
  • Automatic migrations
  • Single canister transactions
  • Custom scalars
  • Schema authorization directives e.g. something like @auth(role: OWNER) for individual fields

Tentative roadmap

The following may or may not be implemented by Sudograph, but they seem like good ideas:

  • Unbounded scaling through a multi-canister architecture
  • upsert
  • create, update, delete many
  • create, update, delete, update/upsert within mutation inputs
  • order by multiple fields
  • Statistics within relation results (for example total counts, averages, sums, etc)
  • subscriptions
  • unique constraints and capabilities

Projects using Sudograph

Inspiration

Sudograph was inspired by many previous projects:




鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap