開発者たちは、バックエンド開発を簡素化しながら柔軟なデプロイメントオプションを提供する軽量な Firebase 代替品である bknd について活発に議論しています。このオープンソースプロジェクトは、特に認証メカニズムとデプロイメントの柔軟性に関して関心を集め、コミュニティは既存のソリューションとの比較を検討しています。
認証と認可に関する懸念
セキュリティは、バックエンドアズアサービスソリューションを評価する開発者にとって最優先事項です。コミュニティディスカッションでは、認証の実装が主な懸念事項として浮上し、開発者は bknd がユーザーアクセス制御をどのように処理するかについて疑問を投げかけています。プロジェクトの作成者によると、bknd は Firebase と同様のマルチ戦略認証を提供し、メール/パスワードの組み合わせと OAuth/OIDC プロトコルをサポートしており、 Google と GitHub の統合のための事前設定オプションも用意されています。
認可システムは、ロールベースのアクセス制御を採用しており、権限はロールに付与され、そのロールがユーザーに割り当てられます。クレームは JWT(JSON Web Tokens)を通じて転送され、有効期間、シークレット、ハッシュパラメータを設定できます。現在、システムはステートレスに動作しており、トークンはセッションストアに対して検証されませんが、開発者はコミュニティのフィードバックに基づいてそのような機能を実装する意向を示しています。
「バックエンドロジックを間に入れたくない操作は考えられません。Firebase のルールでは不十分です。」
この意見は、アクセス制御を過度に単純化する可能性のあるバックエンドアズアサービスソリューションに対して、一部の開発者が持つ懐疑的な見方を強調しています。しかし、bknd はシステムイベントにフックし、特定の要件に従って認可をカスタマイズできるようにすることで、この問題に対処しようとしています。
デプロイメントの柔軟性と統合
bknd の重要な差別化要因は、そのデプロイメントの柔軟性にあるようです。従来のバックエンドサービスが別個のホスティングを必要とするのとは異なり、bknd はフルスタックアプリケーションに直接組み込むことができます。これにより、そのような構成でデータベース認証情報がどのように安全に保たれるかについて、コミュニティ内で混乱が生じています。
プロジェクト作成者は、 Next.js 、 Remix 、または Astro などのフレームワークを使用する場合、bknd はサーバーサイドでのみ実行され、適切な関心の分離を維持すると説明しました。エッジデプロイメントの場合、bknd は Workers、D1、R2 を使用する Cloudflare などのプラットフォームをサポートしており、 PocketBase などの代替品よりも潜在的にスケーラブルです。
このデプロイメントの柔軟性は、React 以外の環境にも拡張されています。プロジェクトは React フレームワーク向けの特定の統合を提供していますが、コア機能は任意の技術スタックで動作する REST API を通じてアクセスできます。プロジェクトには TypeScript SDK が含まれていますが、コアではフレームワークに依存しません。
bknd パッケージ構造
インポート | 目的 |
---|---|
bknd |
APIやアダプターを含むバックエンド |
bknd/ui |
Reactフレームワーク用の管理UI部品 |
bknd/client |
APIエンドポイント用のTypeScript SDKとReactフック |
bknd/elements |
認証とメディア用のReactコンポーネント |
パッケージサイズ
- bknd: 53.7 KB
- bknd/client: 4.8 KB
- bknd/elements: 13.4 KB
- bknd/ui: 235.7 KB
API形式の完全な bknd アプリの最小サイズ:約212 KB(gzip圧縮後)
コミュニティの反応
初期採用者は bknd のアプローチに感謝の意を表しており、あるユーザーはプロジェクト作成者に特に感謝しています。シンプルさ、柔軟性、そして馴染みのある認証パターンの組み合わせは、 Firebase や Supabase などの確立されたサービスの代替品を探している開発者に共感を呼んでいるようです。
bknd の開発が進むにつれて(現在はバージョン1.0.0以前)、コミュニティのフィードバックがその機能の優先順位を形作る可能性が高いです。プロジェクトの作成者は、認証、デプロイメントモデル、および統合機能に関するユーザーの質問に積極的に対応し、懸念事項に対する反応の良さを示しています。
bknd の探索に興味のある開発者のために、プロジェクトはクイックスタートオプション(npx bknd run
)と docs.bknd.io での詳細なドキュメントを提供しています。そのフットプリントの小ささ(コアパッケージはわずか53.7 KB)とウェブ標準との互換性の強調により、bknd は、ますます混雑するバックエンドアズアサービスの風景の中で興味深い新しい選択肢となっています。
参考: bknd-io/bknd