2021年にAPIビルダーを選択—CanonicまたはHasura

APIの構築は市場の多くのプレーヤーによって簡素化されてきましたが、今後のプロジェクトや無駄のない開発チームに適したツールは、非常に難しい作業になる可能性があります。

2020年10月15日、当社の製品であるCanonicを Product Hunt であり、ハッカーニュースでの驚異的なトラクションとともに 3rd Product for the Day にランクインしました。上手。製品に関して私たちに尋ねられたすべての質問の中で、最も頻繁に寄せられたのは 「CanonicはHasuraとどう違うのですか?」

では、CanonicとHasuraとは正確には何ですか?

HasuraはオープンソースのGraphQLサーバーですこれにより、 Postgres を介してリアルタイムの GraphQL APIが提供され、データベースイベントでWebフックトリガーが使用されます、およびビジネスロジックのリモートスキーマ。これは、Postgresを利用したGraphQLアプリの構築、またはPostgresを使用した既存のアプリケーションのGraphQLへの段階的な移行を支援することを目的としています。

Canonicは ローコードプラットフォーム でAPIを数分で作成できます。
本番環境に対応したバックエンドインフラストラクチャのニーズ全体を管理しながら、バックエンドにGraphQLサービスを提供します。これにより、コンテンツモデルを定義し、データベースを自動的にプロビジョニングし、サーバーをリアルタイムで起動し、GraphQLAPIとRESTAPIの両方を介してコンテンツを提供できます。

これは、構築するためのシームレスなエクスペリエンスを提供することを目的としています。最もユーザーフレンドリーな方法で、あらゆる種類のデジタル製品の強力なバックエンド。

それでも同じように感じる場合は、主な差別化要因のいくつかを次に示します。

1。新規/リンク/データAPIのインポート

Hasura は、独自の既存/新規 Postgresデータベースと、その上にCRUD GraphQLAPIを提供します。

Canonic は、次のいずれかの柔軟性を提供します。

  • 既存のデータベースがある場合、 Canonicのインポート/リンク機能を使用すると、データをCanonicに非常に簡単に取り込むことができます(現在、 MongoDB 、将来的には Postgres Airtable MySQL など)、その上にAPIの構築を開始します。
  • 新しいプロジェクトの場合は、次のように定義します。コンテンツモデルを使用して、CMSとデータベースを自動的に生成し、プロジェクトをわずか数分でライブでデプロイします。 Canonicでデータベースを構築する

CRUDAPIは両方のGraphQLで生成されますおよびREST形式。

スクリーンショットのインポート
Canonicインポート画面

2。直感的なコンテンツモデリング

Hasuraのの主な使用例は、既存のデータベースにデータAPIを提供することです。新しいテーブル、それらのフィールド、およびそれらの間の関係を作成するための要求の厳しいプロセス。データ型や外部キーなどの知識がない人にとっては、かなり混乱する可能性があります。

Hasuraのスクリーンショット
Hasuraコンテンツモデラー

Canonic には独自のグラフベースのコンテンツモデリングエンジンを使用すると、非常に直感的でインタラクティブな方法でデータを配置する方法の構造を定義できます。

カノニックグラフベースのコンテンツモデリングシステム
  • テーブルに含めるさまざまなタイプのフィールドを作成します。
  • 最適な方法で並べ替えます。
  • 組み込みのサポートさまざまなユーザーサインアップタイプ(Google、Githubなど)を統合するため
  • 検証を追加■コンテンツを追加/更新するときに各フィールドが準拠します。
  • 関係を定義してテーブルを簡単にリンクします。
  • セマンティクスのため、または必要に応じて、フィールドをグループ化します。そのデータグループのエントリのリストを保存します。
  • 展開時に変更がどのように表示されるかをプレビューします。

3。 APIとビジネスロジックの拡張

Hasura では、CRUDAPIを拡張して独自のビジネスを作成できます次のいずれかのロジック:

  • 独自のGraphQLサービスを構築し、それをHasuraのGraphQLサービスとマージして、単一のエンドポイントで連携させます。
  • カスタムWebフックを自分で作成する理想的にはサーバーレス関数として、データベースに変更が発生するたびにトリガーされ、データベースが変更されるとHasuraがトリガーします。

On Canonic 、新しいカスタムエンドポイントを追加する場合は、別のサービスを構築してCanonicとリンクする必要はありません。

  • 必要な数のエンドポイントを作成できます。 GraphQL形式とREST形式の両方で提供する準備ができています。
  • 組み込みのコードエディターを使用してカスタムビジネスロジックを追加できます。
CanonAPIワークフロー画面

これにより、新しいエンドポイントを構築し、既存のエンドポイントを拡張することが非常に簡単になります。他の場所。

4。 APIドキュメント

バックエンドサービスは、最終的に、APIコントラクトに関する正しい知識を必要とする他のプラットフォームと統合する必要があります。 Canonicは、すべてのAPIのドキュメントを一か所でスマートに生成するため、バックエンドやデータベース構造をまったく知らなくても、契約が統合を開始する内容を誰でも直接確認できます。

ドキュメントは反復的なプロセスです。システムの現在の正しい状態を反映する必要があります。これにより、ドキュメントを作成する必要がなくなり、ビルドを迅速に行うことができます。

Canonicドキュメントのスクリーンショット
Canonicドキュメントスクリーン

これに対して、HasuraはAPI契約に関するドキュメントを提供していません。

5。本格的なコンテンツ管理システム

Hasura は、新しい行との値を追加する従来のアプローチを採用しています。それぞれの列のフィールド。基本的な表形式を使用して、データベースに保存されているデータを確認できます。

HasuraCMSスクリーンショット
Hasura CMS

一方、Canonicは、コンテンツモデルの定義方法に合わせた本格的なCMSを提供します。アクセス制御を追加して、アクセス権を持つユーザーだけがアクセス制御を表示および操作できるようにすることができます。そこから画像/ファイルを直接アップロードでき、コンテンツで定義したすべての検証ルールに従います。

正規の自動生成されたcmsスクリーンショット
CanonicCMSスクリーンショット

6。 GraphQLサービス以上のもの

Hasura 。これは、CRUDとスケーラブルなリアルタイムバックエンドを自分で作成するという面倒な労力を節約することを目的としています。

Canonicは、より citizen-になることを目指しています。技術にやさしい最初のプラットフォーム を使用すると、最小限の技術的ノウハウでバックエンドスタック全体をエンドツーエンドで構築できます。

これにより、 Canonic Hasuraとどのように異なるかをよく理解できます。 と、スタック、開発ワークフローにどのように適合し、プロジェクトに付加価値を与えるかをより明確にします。

Canonic / Hasura

Canonicに無料で登録して使用を開始できます こちら discordコミュニティ 他のメンバーや私たちと直接やり取りするため。

ウェブサイト | Twitter | LinkedIn | フェイスブック | インスタグラム