Hasura
Harsura GraphQL Engine
部類としてはGraphQL Server
ただ、他の一般的なGraphQL Serverよりも能力が強い
具体的には、GraphQLのResolverやGraphQLのDataSourceを書かなくて良い
そういう点を指して解説記事では「自動でGraphQL serverを立ててくれる」とか言っている
ということもあってか「GraphQL Engine」と呼んだりもする
が、初見で「GraphQL Engine」って言ってもイミフだと思うmrsekut.icon
既存のDBに対して、かんたんに接続してくれる
GraphQLリクエストを1つのSQLに変換してDBに投げる
JWTベースの認証認可
Websocketを使ったGraphQL Suscritption
website
github
Haskell実装
tutorial
https://github.com/hasura/learn-graphql
いろんな例がある
対応しているDB
PostgreSQL
MySQL
ref
https://hasura.io/graphql/database/mysql/
with @tanstack/react-query
https://hasura.io/blog/getting-started-with-react-query/
なぜPrismaがよく引き合いに出されるのか
最初は、「Hasura v.s. Prisma」じゃなくて、「GraphQL Server v.s. Prisma」では?って思ってたけどわかったmrsekut.icon
Hasuraは一般的なGraphQL Server以上のことをやってくれる
具体的にはResolverを手動で書かなくていい
このノリはPrismaでも同じ
どちらもqueryだけ書けば、欲しいデータを取ってきてくれる
「ソレとDBの間の処理」は完全にソレ任せにできる
https://qiita.com/yuno_miyako/items/4a4f68a473231f8c07cd
https://takeshiamano.medium.com/graphqlとrdbmsのいいとこ取りをしたhasura-5c8a5ab4cca
https://qiita.com/yuno_miyako/items/4a4f68a473231f8c07cd