1
0
Fork 0
Website for recito https://recito.org
  • TypeScript 49.5%
  • Svelte 44%
  • JavaScript 3%
  • Shell 1.4%
  • HTML 0.8%
  • Other 1.3%
Find a file
2026-10-08 08:43:10 -06:00
cgi Add Italian support 2026-09-30 20:00:50 -06:00
docs Fix: Exit status on fail 2026-10-01 10:18:31 -06:00
messages Add Italian support 2026-09-30 20:00:50 -06:00
project.inlang Add Italian support 2026-09-30 20:00:50 -06:00
scripts Fix: Covers are served without Cache-Control 2026-09-26 11:11:20 -06:00
src Add Italian support 2026-09-30 20:00:50 -06:00
static Books 2026-10-08 08:43:10 -06:00
tests Add Italian support 2026-09-30 20:00:50 -06:00
.gitignore Implement multi-lang site, ES first 2026-09-22 13:30:06 -06:00
AGENTS.md Fix: Exit status on fail 2026-10-01 10:18:31 -06:00
CHANGELOG.txt v0.8.3 2026-09-21 14:03:37 -06:00
deploy.sh Fix: Exit status on fail 2026-10-01 10:18:31 -06:00
LICENSE-AGPL.txt AGPLv3 2026-09-14 10:57:25 -06:00
package-lock.json Implement multi-lang site, ES first 2026-09-22 13:30:06 -06:00
package.json Fix: Covers are served without Cache-Control 2026-09-26 11:11:20 -06:00
prune-audio.sh Handle new slug paths 2026-09-15 17:53:47 -06:00
README.md rm old stubs, add first real book 2026-09-14 22:20:49 -06:00
svelte.config.js Implement multi-lang site, ES first 2026-09-22 13:30:06 -06:00
tsconfig.json Draft website 2026-09-14 11:35:49 -06:00
vite.config.ts Draft website 2026-09-14 11:35:49 -06:00
vitest.config.ts Add tests... 2026-09-16 23:16:33 -06:00

Recito Website

Static site for the recito audiobook catalog. Built with SvelteKit 2 + Svelte 5 (runes) and @sveltejs/adapter-static; all pages are prerendered.

Develop

npm install
npm run dev      # local dev server
npm run check    # svelte-check types
npm run build    # prerender to build/
npm run preview  # serve the built site

Requires Node 20.19+ (Vite 7). See docs/INSTALL.md for setup/deploy details and docs/USAGE.md for catalog maintenance.

Data

The catalog is produced by the recito-catalog pipeline from recito renders of Standard Ebooks titles, and synced into static/ (see docs/USAGE.md):

  • catalog/browse.json — slim record per audiobook for the grid (fetched at runtime by the browse page; never bundled).
  • catalog/books/<slug>.json — full record per audiobook, read at build time by the prerendered detail pages.
  • audio/<slug>.m4b — the rendered audiobook (gitignored; 100s of MB).
  • covers/<slug>.jpg — SE's cover art, verbatim from the source epub, with the cover credit beside it as <slug>.license.txt (gitignored).

Field shapes are defined in src/lib/types.ts. Cover.svelte shows the synced cover, falling back to a generated typographic cover (coverHue) when the image is absent.

LICENSE

AGPL-3.0-or-later license, or any later version.

Copyright © 2026, Jeff Moe.

Loveland, Colorado, USA