Memos
A privacy-first, lightweight note-taking service for capturing and sharing ideas.
Make it yours
Fork this appForking copies Memos into your own GitHub account and deploys it with its own database. Nothing is shared with the original.
- Upstream
- usememos/memos
- License
- MIT
- Installs
- 1
- Homepage
- Visit
Memos is a lightweight, self-hosted workspace for private notes, knowledge capture, and sharing. Its web interface keeps short entries, tags, attachments, and collaborative context together without sending that content to a third-party notes service.
SproutOS generates a private 32-byte MEMOS_ADMIN_PASSWORD and creates the sole initial account, username admin, before the site receives traffic. After installation, open the project's Environment page, reveal MEMOS_ADMIN_PASSWORD, and sign in as admin; every reveal is audited. Change the password in Memos after signing in. Later deployments never reset an owner-changed password, so the generated value stops working after that change. Public registration starts disabled, and the administrator can opt in later from Memos settings.
This recipe builds the exact pinned upstream commit into a statically linked Linux ARM64 executable with its web frontend included. SproutOS provisions managed PostgreSQL for accounts and notes plus managed S3-compatible object storage for attachments, then injects scoped connection values at runtime; credentials are never committed to the generated repository. A dedicated migration artifact updates the database and performs the one-time ownership bootstrap before a new application version receives traffic, while the request-serving process cannot migrate or claim the first administrator at startup.
SproutOS currently buffers Lambda responses, so this recipe replaces Memos' long-lived SSE connection with visible-tab polling. Changes made by another user or tab appear within about five seconds while the page is visible, and returning to a backgrounded page triggers an immediate refresh. This is eventual refresh rather than instantaneous realtime delivery. The generated repository keeps every adaptation and its deployment workflow inspectable by the project owner.