Personal Instances
A single user on SQLite needs no separate database server.
Memos feature
One Go process serves the API and the web app. There is no separate cache, queue, or search service to run.
One Go process with in-process caching and no extra services, so a modest host can run it.
Benefits
Each point describes what current Memos releases do.
The app talks to your own server, not a third-party cloud
An in-process cache for settings and users, cleared on every write
SQLite in WAL mode by default, so reads continue during writes
Server-generated image thumbnails keep attachment views light
Long feeds load in pages
Move to MySQL or PostgreSQL when you want a separate database server
Use cases
A single user on SQLite needs no separate database server.
Run on a small VPS, a Raspberry Pi, or other low-power hardware.
For more users, use MySQL or PostgreSQL and size the host from real usage.
Technical details
Go backend with the Echo web framework
SQLite WAL mode and busy timeout by default
In-memory caching layer
Connect RPC and gRPC over Protocol Buffers
Start here
Install Memos on a server you choose, then explore the rest of the features.