flatnotes

dullageMIT活跃维护

自托管的 Markdown 笔记 Web 应用,直接用扁平文件夹里的 md 文件当存储,不需要数据库,适合想轻量管理个人笔记和 wiki 的人。

A self-hosted, database-less note taking web app that utilises a flat folder of markdown files for storage.

v5.5.5发布于 2026-08-29 07:09 UTC3,277star223fork同步于 2026-11-10 05:40 UTC

怎么上手

由 README 提炼,执行前请确认
docker run -d -e "PUID=1000" -e "PGID=1000" -e "FLATNOTES_AUTH_TYPE=password" -e "FLATNOTES_USERNAME=user" -e 'FLATNOTES_PASSWORD=changeMe!' -e "FLATNOTES_SECRET_KEY=aLongRandomSeriesOfCharacters" -v "$(pwd)/data:/data" -p "8080:8080" dullage/flatnotes:latest
硬件要求按 README 说明

README 未说明硬件要求,推荐用 Docker 自托管运行

有 Docker 镜像
下载:源码 zip·GitHub Releases(安装包)本站不镜像安装包

项目说明

由 README 自动翻译提炼

自托管无数据库笔记应用,直接用扁平 Markdown 文件夹存笔记,不绑架你的数据

自托管的 Markdown 笔记 Web 应用,直接用扁平文件夹里的 md 文件当存储,不需要数据库,适合想轻量管理个人笔记和 wiki 的人。

核心能力

  • 笔记以纯 Markdown 文件存储,无数据库和私有格式
  • 仅缓存搜索索引,每次搜索时增量同步外部改动
  • 支持原文与所见即所得两种 Markdown 编辑模式
  • 支持标签、全文搜索和 [[wikilink]] 笔记互链
  • 提供无、只读、用户名密码、2FA 多种认证方式

容易踩的坑

默认监听 8080 端口,需按需映射;用密码认证时必须自行设置 FLATNOTES_SECRET_KEY;笔记目录挂载到容器 /data,搜索索引默认也放在该目录下。

内容由模型根据 README 生成,可能不完整或不准确,以官方文档为准。看原文 README

最近发版

5 个版本v5.5.5
  1. v5.5.5最新正式版2026-08-29 · 2026-08-29 07:09 UTC

    🗒️ Notable Changes:

    • Switched to uv (from pipenv) for Python dependency management.
    • Updated Python (3.11 -> 3.13)
    • Updated Python dependencies.
    • Updated JS dependencies.
    • Updated Docker base images.
  2. v5.5.42025-10-20 · 2025-10-20 20:04 UTC
    查看更新说明

    🗒️ Notable Changes:

    • Bumped Python dependencies.
    • Bumped JS dependencies.
    • Previously, an unauthenticated call to the API was required before the app knew a login was required. When the first page loaded didn't make any API calls (e.g. the new note page), you would incorrectly appear logged in until a subsequent API call were made. Now an auth check call is made to the API on app load regardless of the page loaded. Thanks for your help on this @kontaxis.

    🪲 Bug Fixes:

    • Local drafts are now cleared on logout. #334
    • Local drafts are now forgotten on browser closure if you haven't checked "Remember Me". #335
  3. v5.5.32025-06-20 · 2025-06-20 08:02 UTC
    查看更新说明

    🪲 Bug Fixes:

    • Fixed an issue preventing images from loading when navigating straight to a note. #270.
  4. v5.5.22025-06-13 · 2025-06-13 11:27 UTC
    查看更新说明

    🪲 Bug Fixes:

    • Fixed an issue where an empty wikilink (e.g. [[ ]]) would prevent notes from rendering. #310
  5. v5.5.12025-04-04 · 2025-04-04 11:41 UTC
    查看更新说明

    🪲 Bug Fixes:

    • Search results from tag auto links are now sorted by title.

用户点评

登录用户的真实使用记录,可按版本和硬件筛选
共 0 条

    还没有人点评。第一个说出真实体验的人最有价值。

    README 原文

    未翻译

    A self-hosted, database-less note-taking web app that utilises a flat folder of markdown files for storage.

    Log into the demo site and take a look around. Note: This site resets every 15 minutes.

    Contents

    Design Principle

    flatnotes is designed to be a distraction-free note-taking app that puts your note content first. This means:

    • A clean and simple user interface.
    • No folders, notebooks or anything like that. Just all of your notes, backed by powerful search and tagging functionality.
    • Quick access to a full-text search from anywhere in the app (keyboard shortcut "/").

    Another key design principle is not to take your notes hostage. Your notes are just markdown files. There's no database, proprietary formatting, complicated folder structures or anything like that. You're free at any point to just move the files elsewhere and use another app.

    Equally, the only thing flatnotes caches is the search index and that's incrementally synced on every search (and when flatnotes first starts). This means that you're free to add, edit & delete the markdown files outside of flatnotes even whilst flatnotes is running.

    Features

    • Mobile responsive web interface.
    • Raw/WYSIWYG markdown editor modes.
    • Advanced search functionality.
    • Note "tagging" functionality.
    • Customisable home page.
    • Wikilink support to easily link to other notes ([[My Other Note]]).
    • Light/dark themes.
    • Multiple authentication options (none, read-only, username/password, 2FA).
    • Restful API.

    See the wiki for more details.

    Getting Started

    Hosted

    A quick and easy way to get started with flatnotes is to host it on PikaPods. Just click the button below and follow the instructions.

    PikaPods

    Self Hosted

    If you'd prefer to host flatnotes yourself then the recommendation is to use Docker.

    Example Docker Run Command

    docker run -d \
      -e "PUID=1000" \
      -e "PGID=1000" \
      -e "FLATNOTES_AUTH_TYPE=password" \
      -e "FLATNOTES_USERNAME=user" \
      -e 'FLATNOTES_PASSWORD=changeMe!' \
      -e "FLATNOTES_SECRET_KEY=aLongRandomSeriesOfCharacters" \
      -v "$(pwd)/data:/data" \
      -p "8080:8080" \
      dullage/flatnotes:latest
    

    Example Docker Compose

    version: "3"
    
    services:
      flatnotes:
        container_name: flatnotes
        image: dullage/flatnotes:latest
        environment:
          PUID: 1000
          PGID: 1000
          FLATNOTES_AUTH_TYPE: "password"
          FLATNOTES_USERNAME: "user"
          FLATNOTES_PASSWORD: "changeMe!"
          FLATNOTES_SECRET_KEY: "aLongRandomSeriesOfCharacters"
        volumes:
          - "./data:/data"
          # Optional. Allows you to save the search index in a different location: 
          # - "./index:/data/.flatnotes"
        ports:
          - "8080:8080"
        restart: unless-stopped
    

    See the Environment Variables article in the wiki for a full list of configuration options.

    Roadmap

    I want to keep flatnotes as simple and distraction-free as possible which means limiting new features. This said, I welcome feedback and suggestions.

    Contributing

    If you're interested in contributing to flatnotes, then please read the CONTRIBUTING.md file.

    Sponsorship

    If you find this project useful, please consider buying me a beer. It would genuinely make my day.

    Sponsor

    Thanks

    A special thanks to 2 fantastic open-source projects that make flatnotes possible.

    • Whoosh - A fast, pure Python search engine library.
    • TOAST UI Editor - A GFM Markdown and WYSIWYG editor for the browser.