HN 日本語サマリー

← 一覧へ戻る
Web開発

Show HN: ユーザーがデータの保存場所を制御できるSaaSアプリを作成

Show HN: Write SaaS apps where users control where their data is stored (github.com)

7 pointsby WolfOliver0 コメント

要約

linkedrecords.comは、ユーザーがデータの保存場所を制御できるオープンソースのBackend as a Service (BaaS) です。このプラットフォームは、リアルタイムコラボレーション機能を汎用的に提供することを目指し、従来のFirebaseのようなBaaSとは異なり、ビジネスロジックを持たないバックエンドが特徴です。トリプルストアやスキーマオンリードといった概念を用いることで、開発者はバックエンドコードを書く必要がなくなり、AIエージェントとの連携も効率的になります。

全文翻訳

皆さん、HNの皆さん、 linkedrecords.comという、私がしばらく取り組んでいるオープンソースのバックエンド・アズ・ア・サービスを皆さんと共有したいと思います。これは、興味深いひねりを加えたFirebase/Convexの代替と考えることができます。 2018年、私はGoogleドキュメントで大規模なソフトウェア要件/アーキテクチャ文書を作成する必要がありました。当時、Googleドキュメントの制限(図のキャプションがない、見出しの自動ナンバリングがない、文書が大きくなると遅くなるなど)には不満がありましたが、そのリアルタイムコラボレーション機能には魅了されていました。そこで、私はその仕組みを理解しようと探索を開始し、Googleドキュメントの代替の実装に着手しました。 この種のリアルタイムコラボレーションが未来であると確信していたので、将来構築するすべてのツールで使えるように、これをできる限り汎用的にする方法について深く考えました。 同時に、Firebaseでも遊んでいました(驚くべきことに、FirebaseではリアルタイムコラボレーションがテキストのマージではなくJSONしか提供しないため、Googleドキュメントの代替を簡単に構築することはできません)。そして当時、私はバックエンド・アズ・ア・サービスが正しい道であると確信していました。私たちがまだカスタムバックエンドコードを書いている最も重要な理由の1つは、認可のためだと考えていました。 バックエンドをできる限り汎用的にしようとしたときに、別の問題にも直面しました。エンティティ間の関係もドメイン固有であるということです。例えば、ドキュメントは多くのコメントを持つことができます。 幸運にも、2018年に私はWeb 3.0と呼ばれる別の概念に興味を惹かれました。2018年当時、これは暗号通貨とは何の関係もありませんでした。これはセマンティックWebと、その標準の1つであるResource Description Frameworkを指す用語として使われていました。再利用できたかもしれないRDFの実装もいくつかありましたが、それらはすべてXMLベースで、ほとんどがJavaベースでした。私は何か軽いものが必要でした。そこで、私自身のRDF製品を実装する代わりに、RDFトリプルストアのアイデアを取り入れ、独自の解釈を考案しました。 トリプルストアやスキーマ・オン・リードといった概念を使用し、バックエンドにビジネスロジックを一切持たないシステムを考案しました。Googleドキュメントの代替に取り組んでいるうちに、私は当初は予想していなかったいくつかの特性を発見し、このシステムに夢中になりました。 - Reactでのグローバルな状態の扱いは非常に簡単です。ブラウザでSQLクライアントを使用しているような感覚で、すべてのクエリがリアクティブで常に最新の状態に保たれます。クエリを作成する際に認可について考える必要はなく、すべて組み込まれています。 - バックエンドがドメイン固有のコードから100%解放されているため、シングルページアプリを任意のlinkedrecordsデプロイメントに接続できます。 - バックエンドコードを書く必要がありません。 - AIエージェントを使用する際に非常に効率的です。 これを体験する最良の方法は、この小さなチュートリアルに従うことです:https://linkedrecords.com/getting-started/ 理解するのに少し時間がかかるので、心を開いて取り組んでください。 これについて皆さんのフィードバックをぜひ聞きたいです。