TreeMap
A free, open-source disk-space visualizer. Squarified treemap, duplicate hunting, disk-full forecasting, and cleanup that only ever moves files to the Trash.
翻译准备中
一个阅读生活的家。阅读你的书籍,捕获留下的内容,并将阅读转化为思考与写作,全部在一个自托管的学习环境中。
AI 翻译
A home for your reading life. Read your books, capture what stays with you, and turn your reading into thought and writing in one self-hosted study.
取自仓库 README
正在加载完整 README。 以下为已保存的摘录。
A home for reading, thinking, and writing.
Bring books, notes, ideas, and drafts together in one connected place.
Nostos is a personal reading and writing environment built around a simple idea: what you read should be able to stay connected to what you think and what you eventually write.查看完整 README ↗Nostos is an open-source, self-hosted commonplace book for people who read and write. It brings physical books, EPUBs, PDFs and audiobooks into one quiet library, keeps saved passages and notes attached to the exact page they came from, and lets you bring quotations into your drafts with verified citations.
It connects the whole journey in one place: Read → Notice → Capture → Return → Write.
@ in the Writing Studio to pull a kept passage into your draft with attribution attached. Export with real footnotes to Word, PDF, Markdown or rich text for Substack..nostos backups anytime.It is deliberately quiet. There are no social feeds, streaks or engagement mechanics. The optional assistant stays out of the way until you ask for it.
You can use the hosted service, Nostos Cloud, or run it yourself. This repository is the complete, open-source SelfHosted app.
My Clippings.txt or a Readwise CSV export, review them, then add them to the right books.The Brain is where notes from different books meet.
[[Topic]] in any note or with a tap on its card, and sort new notes one by one.@ to quote: find a note, quote or passage by its words, book or author (@schopenhauer will) and put it on the page with its attribution. A long passage opens so you can pick the sentences you want./ for blocks: headings, lists, a divider, an image, a table or code from an empty line.Ask Nostos is an AI assistant for your own library. It can find what you have read, help you capture a thought, or reorganise your collections. When it changes your library, it shows one set of changes you can undo, or review before anything happens. Nostos works fully without it.
On SelfHosted, you connect your own AI provider in Settings → AI connections. Nostos Cloud includes a managed allowance.
.nostos archive and import it into any Nostos, Nostos Cloud or self-hosted.[[Topic]] links kept. Open it in Obsidian or any text editor.The easiest way to start: get started at nostos.page and see plans and pricing.
docker volume create nostos-data
docker run -d \
--name nostos \
-p 5099:8080 \
-v nostos-data:/data \
--restart unless-stopped \
ghcr.io/christian-gennari/nostos:latest
Or use the included Compose file: docker compose up -d. Then open http://localhost:5099. No account or subscription needed.
App-store packages are also available for Unraid, CasaOS, Umbrel, Runtipi and selfh.st.
Everything Nostos keeps lives in the /data volume: the database, your books, local backups and the key ring in /data/keys that protects AI keys saved in Settings. Back up the whole volume, and keep it when you replace the container.
linux/amd64) and on 64-bit Arm (linux/arm64): a Raspberry Pi 4 or 5 with a 64-bit OS, an Apple Silicon Mac, or an Arm NAS. Docker picks the right one for you. 32-bit systems are not supported.docker compose pull && docker compose up -d. latest is published only after the full CI passes on main and that exact image has passed its start-up and persistence check; it never moves back to an older revision. To pin a build, set NOSTOS_IMAGE_TAG=selfhosted-sha-<commit>; a commit that only changes documentation shares its parent's image. Older sha-* tags are not SelfHosted builds./external/media (read-only), then open Settings → This server → External media. See the External media guide./data/keys before you replace the container, or re-enter your AI keys afterwards.The self-hosting docs cover requirements, reverse proxies, backups and updates.
You need the .NET 10 SDK and Node.js LTS.
git clone https://github.com/Christian-Gennari/Nostos.git
cd Nostos
npm install
npm --prefix Nostos.Frontend install
npm start # development: http://localhost:4200
npm run prod # production build: http://localhost:5099
Outside Docker, the database defaults to <content root>/nostos.db. Override paths with Persistence__DatabasePath, Storage__BooksRoot, Storage__BackupsRoot and DataProtection__KeysPath. See Getting started (development) for details.
Nostos is one product with two deployments. SelfHosted (this repository) runs on its own with SQLite, local files, local backups and your own AI provider. Nostos Cloud adds private hosting pieces (sign-in, managed storage, billing, managed AI) around the same product and the same app. See the public/private boundary.
Nostos/
├── Nostos.Product/ # the product: domain, application and API behaviour
├── Nostos.Backend/ # the SelfHosted host: SQLite, local files, backups, your own AI keys
├── Nostos.Shared/ # shared DTOs and contracts
├── Nostos.Frontend/ # the Angular app, shared by SelfHosted and Cloud
└── docs/ # product, architecture and operations docs
Stack: .NET 10 Minimal APIs, EF Core 10 and SQLite · Angular 22 with Signals · epub.js · ngx-extended-pdf-viewer · Howler.js · Sigma.js and Graphology · TipTap with marked and Turndown · Phosphor icons · Newsreader and Hanken Grotesk.
Design: warm paper surfaces, a restrained forest green, literary type and quiet controls. The mark is a doorway and a lowercase n: a Forest Green (#293E32) tile with a White (#FFFFFF) arch, the same in light and dark themes. Read the Design Manifesto or browse the brand assets.
Work in progress is tracked in GitHub Issues. Before your first pull request is merged, a bot asks you to accept the Contributor License Agreement with one comment.
Nostos is licensed under the GNU Affero General Public License v3.0 or later. You may run, study, modify, and redistribute the software under those terms. If you run a modified version as a network service, you must offer its source code to the people who use it.
The Nostos name, related word marks, and official visual identity are not granted by the AGPL. Distributed forks and derivative builds must use independent naming and branding. See TRADEMARK.md for the full policy.
The EPUB reader bundles the Libron typeface (© Nico Verbruggen, derived from Readerly and Newsreader), licensed separately under the SIL Open Font License 1.1.