An open source, lightweight note-taking service. Easily capture and share your great thoughts.
Go to file
Steven d1492007ab fix(store): filter inbox notifications by message type at database level
Add MessageType filter to FindInbox to exclude legacy VERSION_UPDATE
notifications from inbox queries. This resolves the issue where users
saw notification counts but no items displayed, as VERSION_UPDATE
entries cannot be rendered in the new UserNotification API.

Changes:
- Add MessageType field to FindInbox struct for database-level filtering
- Implement JSON extraction filters in SQLite, MySQL, and PostgreSQL drivers
- Update ListUserNotifications to filter MEMO_COMMENT type at store level

This approach improves performance by filtering at the database rather
than in application code, reducing unnecessary data transfer for users
with many legacy inbox entries.

Fixes #5278

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-01 08:43:05 +08:00
.github chore: remove goreleaser 2025-11-30 11:42:46 +08:00
cmd/memos refactor: remove unused constants 2025-10-16 20:40:46 +08:00
internal chore: bump version 2025-11-25 22:17:45 +08:00
plugin feat(auth): add PKCE support and enhance OAuth security 2025-12-01 00:04:26 +08:00
proto feat(auth): add PKCE support and enhance OAuth security 2025-12-01 00:04:26 +08:00
scripts refactor: rename workspace to instance throughout codebase 2025-11-05 23:35:35 +08:00
server fix(store): filter inbox notifications by message type at database level 2025-12-01 08:43:05 +08:00
store fix(store): filter inbox notifications by message type at database level 2025-12-01 08:43:05 +08:00
web feat(auth): add PKCE support and enhance OAuth security 2025-12-01 00:04:26 +08:00
.dockerignore chore: update resource dialog style (#982) 2023-01-21 08:46:49 +08:00
.gitignore refactor: remove unused constants 2025-10-16 20:40:46 +08:00
.golangci.yaml chore: update golangci config 2025-04-02 22:53:17 +08:00
CLAUDE.md chore(web): migrate from ESLint+Prettier to Biome 2025-11-14 23:58:07 +08:00
CODEOWNERS chore: update readme (#1047) 2023-02-08 08:51:36 +08:00
LICENSE chore: update LICENSE (#4394) 2025-02-11 15:45:20 +08:00
README.md chore: add Vercel OSS Program badge 2025-11-10 20:18:41 +08:00
SECURITY.md chore(docs): update security policy to prevent public vulnerability disclosure 2025-11-21 09:13:40 +08:00
go.mod fix(server): prevent memory exhaustion in thumbnail generation 2025-11-07 09:04:21 +08:00
go.sum refactor: update markdown parser 2025-10-26 11:28:40 +08:00

README.md

Memos

Memos

An open-source, self-hosted note-taking service. Your thoughts, your data, your control — no tracking, no ads, no subscription fees.

Home Live Demo Docs Discord Docker Pulls

Memos Demo Screenshot

Warp — The AI-powered terminal built for speed and collaboration

Warp - The AI-powered terminal built for speed and collaboration

LambdaTest - Cross-browser testing cloud

LambdaTest - Cross-browser testing cloud

Overview

Memos is a privacy-first, self-hosted knowledge base that works seamlessly for personal notes, team wikis, and knowledge management. Built with Go and React, it offers lightning-fast performance without compromising on features or usability.

Why choose Memos over cloud services?

Feature Memos Cloud Services
Privacy Self-hosted, zero telemetry Your data on their servers
Cost Free forever, MIT license Subscription fees
Performance Instant load, no latency ⚠️ Depends on internet
Ownership Full control & export Vendor lock-in
API Access Full REST + gRPC APIs ⚠️ Limited or paid
Customization Open source, forkable Closed ecosystem

Features

  • 🔒 Privacy-First Architecture

    • Self-hosted on your infrastructure with zero telemetry
    • Complete data ownership and export capabilities
    • No tracking, no ads, no vendor lock-in
  • 📝 Markdown Native

    • Full markdown support
    • Plain text storage — take your data anywhere
  • Blazing Fast

    • Built with Go backend and React frontend
    • Optimized for performance at any scale
  • 🐳 Simple Deployment

    • One-line Docker installation
    • Supports SQLite, MySQL, and PostgreSQL
  • 🔗 Developer-Friendly

    • Full REST and gRPC APIs
    • Easy integration with existing workflows
  • 🎨 Beautiful Interface

    • Clean, minimal design and dark mode support
    • Mobile-responsive layout

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!

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

We welcome contributions of all kinds! Whether you're fixing bugs, adding features, improving documentation, or helping with translations — every contribution matters.

Ways to contribute:

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.


WebsiteDocumentationDemoDiscordX/Twitter

Vercel OSS Program