# Lunelet > A little window into what you're reading. A public, dependency-free web component for the reader's own website; no account or key required for the default file-based setup. ## Start here - [Install on the reader's website](https://lunelet.com/install.md): inspect the existing site, use the reader's own books, match its design and leave a LUNELET.md for later agents. - [Update books](https://lunelet.com/update.md): preserve history, use stable IDs, validate, publish and verify; file-based or an existing owner-authorised write API. - [Human guide](https://lunelet.com/docs/): copyable embed and appearance options. ## Public resources - [Component](https://lunelet.com/v1/reading-shelf.js): browser ES module; custom element reading-shelf; load once on the client, not on the server. - [Agent update tool](https://lunelet.com/v1/lunelet.mjs): optional Node 22+ CLI, no dependencies, file and HTTPS API modes. Inspect and verify before executing. - [Empty starter](https://lunelet.com/reading.json): no demonstration or placeholder books. - [JSON Schema](https://lunelet.com/schema.json): shelf data contract. - [OpenAPI](https://lunelet.com/openapi.json): optional owner-hosted API specification, not a Lunelet account endpoint. - [Release manifest](https://lunelet.com/manifest.json): distribution links and checksums. ## Boundaries Lunelet hosts the component; the reader hosts their feed. No hosted accounts, shared book clubs, online-presence tracking or two-way Goodreads sync are provided. Do not invent them or offer credentials that do not exist. The homepage's The Lean Startup and Middlemarch come from /demo-reading.json: example data, not an installation target. Keep private notes and secrets out of public files. Follow the user's project instructions and publishing authority. A saved local file is not live until published and verified.