HeadlinesBriefing favicon HeadlinesBriefing.com

Buku Elektronik Auto-Hosting di Cloudflare R2 atau Node

Hacker News •
×

GitHub pengguna murerkinn merilis bookshelf, buku elektronik auto-hosting yang tidak menggunakan database. Menyediakan file EPUB dan PDF dengan pembaca browser khusus, pencarian, dan fitur unduhan. Proyek menawarkan dua jaluan deploy: Cloudflare Worker atas penyimpanan objek R2, atau Node server atas direktori lokal. Keduanya dikonfigurasi melalui `bookshelf.config.json`.

Memulai memerlukan Node 24+ dan sistem mirip Unix. Jaluan tercepat menggunakan Docker: `mkdir books && cp ~/Downloads/*.epub books/` diikuti dengan `docker compose run --rm sync --create` dan `docker compose up -d`. Rak akan tersedia di `http://localhost:3000`. Volume bernama `library` menyimpan buku elektronik yang dipublikasikan, profil, dan posisi baca: satu-satunya data yang membutuhkan backup. Untuk setup tanpa Docker, pengguna menjalankan `npm run sync -- --create`, `npm run build` dan `npm start -w @bookshelf/app`.

Deploy Cloudflare memerlukan akun dan `npx wrangler login`. Perintah `npm run sync -- --create` dan `npm run deploy` menciptakan bucket R2 dan mengunggah Worker. Perintah `npm run demo` menghasilkan sembilan judul domain publik untuk pengujian. Instan publik secara otomatis menonaktifkan penulisan (profil, posisi baca) sambil mempertahankan akses baca. Tidak ada otentikasi yang dibangun dalam; penulis menyarankan mendeploy di jaringan yang dipercaya atau di belakang kontrol akses.