A lightweight, self-hosted memo hub. Open Source and Free forever.
You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
Go to file
boojack 3c5b0ea90a chore: update style 3 years ago
.github/workflows
api chore: update create memo with visibility 3 years ago
bin/server
common chore: release `v0.2.1` (#120) 3 years ago
resources chore: update `demo.webp` 3 years ago
scripts
server chore: create backup when migration 3 years ago
store chore: create backup when migration 3 years ago
web chore: update style 3 years ago
.dockerignore
.gitignore chore: use echo static middleware to serve dist 3 years ago
CODEOWNERS
Dockerfile feat: use go embed 3 years ago
LICENSE
README.md chore: update readme (#124) 3 years ago
go.mod
go.sum

README.md

✍️ Memos

An open source, self-hosted knowledge base that works with a SQLite db file.

GitHub stars Docker pull Go report

Live DemoDiscuss in Telegram 👾

demo

Features

  • 🦄 Fully open source;
  • 📜 Writing in plain textarea without any burden,
    • and support some useful markdown syntax 💪.
  • 🌄 Share the memo in a pretty image or personal page like Twitter;
  • 🚀 Fast self-hosting with Docker;
  • 🤠 Pleasant UI and UX;

Deploy with Docker

docker run \
  --name memos \
  --publish 5230:5230 \
  --volume ~/.memos/:/var/opt/memos \
  neosmemo/memos:latest \
  --mode prod \
  --port 5230

Memos should now be running at http://localhost:5230. If the ~/.memos/ does not have a memos_prod.db file, then memos will auto generate it.

⚠️ Please DO NOT use dev tag of docker image if you have no experience.

🏗 Development

Memos is built with a curated tech stack. It is optimized for developer experience and is very easy to start working on the code:

  1. It has no external dependency.
  2. It requires zero config.
  3. 1 command to start backend and 1 command to start frontend, both with live reload support.

Tech Stack

tech stack

Prerequisites

  • Go (1.16 or later)
  • Air for backend live reload
  • yarn

Steps

  1. pull source code

    git clone https://github.com/usememos/memos
    
  2. start backend using air(with live reload)

    air -c scripts/.air.toml
    
  3. start frontend dev server

    cd web && yarn && yarn dev
    

Memos should now be running at http://localhost:3000 and change either frontend or backend code would trigger live reload.

🌟 Star history

Star History Chart


Just enjoy it.