As a freelance tech blogger, notes are a big part of my daily work. Blog ideas, rough drafts, research links, and random thoughts all start as notes. Over time, I realized that many popular note-taking apps ask for too much in return, which includes accounts, cloud sync, and trust in someone else’s servers. That didn’t sit right with me. I wanted a tool that felt calm, reliable, and private. After trying multiple note-taking tools, my discovery led me to flatnotes. It’s a self-hosted note-taking app that focuses on simplicity and data ownership. Here’s how flatnotes became an important part of my self-hosted productivity stack.

What is flatnotes?

Installation is a breeze

The flatnotes is a simple, self-hosted notes app made for people who just want to write and keep their notes private. It’s a web-based markdown editor that saves every note as a plain text file on your own server. There’s no cloud sync, no accounts, and no hidden background activity. Your notes stay exactly where you put them.

What I like most about flatnotes is the control it gives me. Instead of storing my ideas, drafts, and research on someone else’s servers, everything lives on my own setup. That means no tracking, no surprise changes, and no worrying about a service shutting down or locking features behind a paywall.

Setting it up was straightforward. I installed flatnotes using Docker, and it took just a few minutes. It runs as a single container, and I simply mapped a folder where all my notes are stored. There’s no database to manage and no complicated settings to tweak.

docker-compose.yml

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

I used the above Docker compose file and changed username, password, secret key, and a few other details based on my setup. After setting up the docker-compose.yml I simply ran the docker compose up -d command.

A clean and simple user interface

Minimal interface, maximum markdown power

When I first opened flatnotes, I loved how simple and clean it looked. There are no confusing menus or extra buttons popping up everywhere. This app is designed to help you focus only on writing, and for me, that was a major plus.

The screen is really straightforward. You have your list of notes on the screen and a search bar. Starting a new note is super-fast, with just a simple click. I also like that I can choose how I write. I can use the rich text (WYSIWYG) editor that shows me what the final note looks like, or I can use the simple markdown editor if I'm typing up something technical. Since I use markdown all the time, being able to quickly format things like bold text or lists without stopping to click buttons makes my note-taking incredibly efficient. The flatnotes gives you a quick, simple writing space, which is exactly what I needed to keep my thoughts organized without getting overwhelmed.

All my notes, backed by a powerful search

Every note is just one search away

The notes I create in flatnotes are highly flexible because they use markdown. This means I can easily include different elements like tables, code examples, clear headings, bullet points, checklists, and important links. I also use a special feature called Wikilinks, where I can type [[Name of Another Note]] and it creates a clickable link between my notes.

The real power of flatnotes became clear once my note collection started to grow. At first, I wondered how I would manage things when the list became big. That's where the search feature comes in. Because flatnotes keeps everything simple (it's "flat," not using complex folders), the best way to find anything is through its seriously powerful search. I can start typing any word, and the app instantly scans through the content of all my notes to show me the results right away. I also make heavy use of tags (like #work or #travel) to quickly group and filter my notes. This powerful searching and simple tagging system ensures I never waste time looking for information; it's always right there when I need it.

The app does not try to do those fancy things

That’s what makes it a focused note-taking tool

One thing I genuinely appreciate about flatnotes is what it doesn’t try to do. There are no dashboards, no AI helpers, no collaboration layers, and no endless customization options. At first, this might sound limiting, but in daily use, it’s actually freeing. The flatnotes is clearly built with one goal in mind: focused note-taking.

When I open the app, I’m not tempted to tweak layouts, manage workflows, or experiment with features I’ll never use. I simply write. That focus helps me think better and work faster, especially when I’m drafting blog ideas or saving research notes.

The app avoids feature bloat on purpose. It doesn’t try to replace task managers, knowledge bases, or full productivity systems. Instead, it does one job well and stays out of the way.

For me, this restraint is its biggest strength. In a world where every app wants to be everything, flatnotes feels refreshingly honest. It respects my time, my attention, and my need for a quiet place to write.

Simple is the smart choice

Using flatnotes has reminded me that good tools don’t need to be complex. It gives me exactly what I want from a note-taking app: privacy, control, and a clean space to write. By being self-hosted and simple, flatnotes fits naturally into my workflow. I don’t worry about where my data is stored, how it’s used, or whether features will suddenly change. It just works, quietly and reliably. For anyone who values ownership, focus, and simplicity over flashy features, flatnotes is a smart choice. Sometimes, the simplest tools are the ones that last the longest.

flatnotes

flatnotes is a self-hosted, database-less note-taking web application. It is designed to be a distraction-free app that uses a flat folder of simple markdown files for storage, ensuring your notes are never held hostage by proprietary formats.