開発中で、まだ何も公開していません。現在のブリッジは空のライブラリを返します。ソース、Web インターフェース、イメージは最新のドラフトに沿って続きます。
読み込む予定のもの
ライブラリの隣で動き、ライブラリには何も変更を加えません。複数のソースを同時に扱い、SHA-256 で統合します。
通常のフォルダー
フォルダーに置かれたゲームを、その場で読みます。
Tinfoil のショップ
Tinfoil のインデックスを話すあらゆるショップ。
Ownfoil
GraphQL API とライブの変更通知。
AeroFoil
セーブ、チート、リクエスト、コンテンツ区分。
仕組み
クライアントがすでに理解できるライブラリを、クライアント側の手間なしで。
ハッシュ
Lantern はすべてのファイルの SHA-256 を求めます。ゲームを読み取り専用でマウントすると、ブリッジがディスク上でハッシュ化して自分で配信します。低速なリモートモードは、ダウンロードしたものを一度だけハッシュ化します。
ペアリングとトークン
SDK のサーバーツールキットの機能すべて: コードまたは QR コードによるペアリング、端末に紐づくトークン、招待、トークンが運ぶ年齢区分の上限。
小さな Web インターフェース
ソースとハッシュ待ち行列の状態、承認する端末、ライブログ、設定。
試してみる
まだ何も公開していないため、ブリッジはチェックアウトから動かします(Python 3.12 以降、uv)。
-
ブリッジを起動
SDK サブモジュールごとクローンして起動します。
git clone --recurse-submodules https://github.com/JigSawFr/lantern-bridge cd lantern-bridge && uv sync uv run lantern-bridge serve --port 8080 -
あいさつする
どの Lantern クライアントでも curl でも、すでにそのハンドシェイクを読めます。
curl -s http://127.0.0.1:8080/.well-known/lantern
今のところ空のライブラリを返します。
設計から用心深く
読み取り専用
ライブラリには何も変更を加えません。ゲームは読み取り専用でマウントされます。
上流を信用しない
設定された配信元の外にある URL はたどらず、読み込む量にも上限を設けます。
テストスイートで検証
仕様の適合テストスイートを使い、偽の上流に対して CI で検証します。