Memos — a uduapp (upstream: usememos/memos)
Find a file
boojack d1cef7a9ab feat(auth): add private instance mode derived from instance_url
Run the instance in private mode when instance_url is not configured: the API rejects anonymous requests except the auth-bootstrap set (sign-in, token refresh, instance profile/settings, SSO providers, share-link access) plus first-run user creation, and the web UI redirects anonymous visitors to /auth instead of /explore. Setting instance_url keeps the current public behavior. Access tokens and personal access tokens are never gated.

Enforcement lives in a shared Authorizer used by both the Connect interceptor and the gRPC-gateway middleware; the file server applies the same rule to public-memo attachments and avatars. Also merges the duplicated Authenticate/AuthenticateToUser token dispatch behind resolveBearer, dedups the AuthContext unauthenticated state, extracts the redirect decision into a pure shouldGatePrivateInstance helper, and prints the access mode at startup.
2026-07-05 22:48:00 +08:00
.github chore(github): improve issue templates with structured triage fields 2026-06-08 22:21:33 +08:00
cmd/memos feat(auth): add private instance mode derived from instance_url 2026-07-05 22:48:00 +08:00
docs feat(filter): expand CEL filter surface with startsWith/endsWith, matches(), and all() 2026-06-15 23:22:28 +08:00
internal feat(auth): add private instance mode derived from instance_url 2026-07-05 22:48:00 +08:00
proto chore(mcp): improve tool discoverability, add orientation tools and evals 2026-06-27 10:32:42 +08:00
scripts fix(scripts): prevent entrypoint restart loop when MEMOS_UID=0 2026-07-03 22:02:53 +08:00
server feat(auth): add private instance mode derived from instance_url 2026-07-05 22:48:00 +08:00
store refactor: use the built-in max/min to simplify the code (#6060) 2026-07-02 08:35:47 +08:00
web feat(auth): add private instance mode derived from instance_url 2026-07-05 22:48:00 +08:00
.dockerignore perf: optimize CI/CD workflows and Docker builds 2026-01-14 22:12:28 +08:00
.gitignore feat(auth): add SSO user identity linkage (#5883) 2026-04-23 08:51:45 +08:00
.golangci.yaml fix(ci): remove invalid revive rule 'use-waitgroup-go' from golangci-lint config 2026-01-06 21:12:40 +08:00
.release-please-manifest.json chore(main): release 0.29.1 (#5985) 2026-06-05 08:06:30 +08:00
AGENTS.md docs: rewrite agent repository guide 2026-06-05 09:17:22 +08:00
CHANGELOG.md chore(main): release 0.29.1 (#5985) 2026-06-05 08:06:30 +08:00
CODEOWNERS chore: tweak CODEOWNERS 2026-03-05 19:14:16 +08:00
go.mod feat(filter): expand CEL filter surface with startsWith/endsWith, matches(), and all() 2026-06-15 23:22:28 +08:00
go.sum feat(filter): expand CEL filter surface with startsWith/endsWith, matches(), and all() 2026-06-15 23:22:28 +08:00
LICENSE chore: update LICENSE (#4394) 2025-02-11 15:45:20 +08:00
README.md chore: tweak readme 2026-07-03 09:21:44 +08:00
release-please-config.json chore: add release-please automation (#5842) 2026-04-15 23:04:10 +08:00
SECURITY.md chore: update security.md 2026-04-01 08:39:49 +08:00

✨ Featured Sponsor: CodeRabbit — Cut code review time & bugs in half, instantly.

Memos

Memos

Open-source, self-hosted note-taking tool built for quick capture. Markdown-native, lightweight, and fully yours.

Home Live Demo Docs Discord Docker Pulls

Memos Demo Screenshot

Features

  • Instant Capture — Timeline-first UI. Open, write, done — no folders to navigate.
  • Total Data Ownership — Self-hosted on your infrastructure. Notes stored in Markdown, always portable. Zero telemetry.
  • Radical Simplicity — Single Go binary, ~20MB Docker image. One command to deploy with SQLite, MySQL, or PostgreSQL.
  • Open & Extensible — MIT-licensed with full REST and gRPC APIs for integration.

Quick Start

docker run -d \
  --name memos \
  -p 5230:5230 \
  -v ~/.memos:/var/opt/memos \
  neosmemo/memos:stable

Open http://localhost:5230 and start writing!

Native Binary

curl -fsSL https://raw.githubusercontent.com/usememos/memos/main/scripts/install.sh | sh

Try the Live Demo

Don't want to install yet? Try our live demo first!

Other Installation Methods

  • Docker Compose - Recommended for production deployments
  • Pre-built Binaries - Available for Linux, macOS, and Windows
  • Kubernetes - Helm charts and manifests available
  • Build from Source - For development and customization

See our installation guide for detailed instructions.

Contributing

Contributions are welcome — bug reports, feature suggestions, pull requests, documentation, and translations.

Sponsors

Love Memos? Sponsor us on GitHub to help keep the project growing!

Star History

Star History Chart

License

Memos is open-source software licensed under the MIT License. See our Privacy Policy for details on data handling.


Website • Documentation • Demo • Discord • X/Twitter

Vercel OSS Program