HeadlinesBriefing favicon HeadlinesBriefing.com

Cloudflare R2 または Node での自ホスト型電子書籍ライブラリ

Hacker News •
×

GitHub ユーザー murerkinnbookshelf をリリース。データベースなしで動作する自ホスト型電子書籍ライブラリ。専用ブラウザリーダーで EPUBPDF を提供し、検索とダウンロード機能を備える。プロジェクトは 2 つのデプロイパスを提供します: Cloudflare Worker 上の R2 オブジェクトストレージ、または Node サーバー上のローカルディレクトリ。どちらも `bookshelf.config.json` で設定されます。

開始には Node 24+ と Unix 系システムが必要です。最も早いルートは Docker を使用します: `mkdir books && cp ~/Downloads/*.epub books/` の後、`docker compose run --rm sync --create` と `docker compose up -d`。シェルフは `http://localhost:3000` で利用可能です。名前付きボリューム `library` は公開された電子書籍、プロファイル、読書位置を保存します: バックアップが必要な唯一のデータです。Docker 以外のセットアップの場合、ユーザーは `npm run sync -- --create`、`npm run build` および `npm start -w @bookshelf/app` を実行します。

Cloudflare デプロイメントにはアカウントと `npx wrangler login` が必要です。コマンド `npm run sync -- --create` と `npm run deploy` は R2 バケットを作成し Worker をアップロードします。コマンド `npm run demo` はテスト用に 9 つのパブリックドメインのタイトルを生成します。パブリックインスタンスは自動的に書き込みを無効化(プロファイル、読書位置)し、読み取りアクセスを保持します。組み込みの認証はありません; 著者は信頼できるネットワークにデプロイするか、アクセス制御の背後にデプロイすることを推奨しています。