My personal note taking app, but you probably want to use one of these primarily open-source applications instead:
Service | Notes |
---|---|
Archivy | "Self-hostable knowledge repository" |
Bear | "Markdown notes you’ll love" (Closed source) |
bookmarker | "Personal project to help me retain information from books" |
Buku | "Personal mini-web in text" |
DayOne | "Beautiful daily journaling mobile and web app" (Closed source) |
Docmost | "Collaborative wiki and documentation software" |
Evernote | "Remember everything and tackle any project with your notes, tasks, and schedule all in one place" (Closed source) |
flatnotes | "Database-less note-taking web app that utilises a flat folder of markdown files" |
Foam | "A personal knowledge management and sharing system for VSCode" |
HedgeDoc | "Web-based, self-hosted, collaborative markdown editor" |
Hypothesis | "Collaboratively annotate the web" (Closed source) |
Joplin | "Privacy-focused note taking app with sync capabilities for Windows, macOS, Linux, Android and iOS" |
Jot | "Rapid note management for the terminal" |
Memos | "The pain-less way to create your meaningful notes. Your Notes, Your Way" |
Monica | "Personal relationship CRM" |
nb | "Note‑taking, bookmarking, and archiving with linking, tagging, filtering .. + more" |
Notion | "Write. Plan. Collaborate. With a little help from AI" (Closed source) |
Notional Velocity (Source) | Introduced ideas that are now more commonplace. Such as "searching for notes is not a separate action; rather, it is the primary interface" |
nvpy | "Simplenote syncing note-taking application, inspired by Notational Velocity and ResophNotes, but uglier and cross-platformerer" |
Obsidian | "With thousands of plugins and themes, you can shape Obsidian to fit your way of thinking" (Closed source) |
Org-Mode | Support Clocking, Capture, and Task/Agenda |
Org-Roam | "Rudimentary Roam replica with Org-mode" |
Outline | "The fastest knowledge base for growing teams. Beautiful, realtime collaborative, feature packed, and markdown compatible." |
Pinboard | "One of the oldest independently run businesses on the web" with a text-first UI |
Rnote | "Sketch and take handwritten notes" |
Roam Research | "As easy to use as a document. As powerful as a graph database. Roam helps you organize your research for the long haul" (Closed source) |
Silicon Notes | "A web-based personal knowledge base with few frills" |
SimpleNote by Automatic | "All your notes, synced on all your devices" (Closed source) |
Siyuan | "Fine-grained block-level reference and Markdown WYSIWYG" |
Standard Notes | "Secure note-taking app" |
Textpod | "Inspired by 'One Big Text File' idea" |
TiddlyWiki | "A unique non-linear notebook for capturing, organising and sharing complex information" |
Trillium Next Notes | "Hierarchical note taking application with focus on building large personal knowledge bases" |
Untitled | "An open-source app for taking notes that feels awesome to use" |
Zettlr | "One-Stop Publication Workbench" |
"Awesome" List of Note Taking Software | "A curated list of awesome note-taking software" |
Digital Gardens | "Resources, links, projects, and ideas for gardeners tending their digital notes on the public interwebs" |
Open Source hosted on Pika Pods | Supports self-hosting of Memos, linkding, etc. |
-
Opinionated. This is my personal app and the design choices are what works for me.
- For example, tagging is intentionally limited in favor of search and bi-directional linking as better explained here.
-
Limited features. Having few features is the goal, for maintainability and usability.
-
There is a CLI and API for local search, creation, and general management
-
Content is stored in files using the
djot
markup language- The files can be edited in any editor (nvim, emacs, VSCode, NotePad++, etc.)
- They can be synced using Rclone, rsync, Gofile, Syncthing, Dropbox, Apple iCloud, hyperdrive, iroh, any-sync, etc.
-
Each note is named by the creation timestamp to be unique, predictable, and easier to permalink
{% In Progress %}
-
subDir/Context ("Yak Pen"): set via environment variable or argument
shears new (evergreen|personal|work)?
- What about having all notes in one directory rather than separate and using metadata instead?
-
shears list -order=(created|modified|count-links|count-merged|count-split) -desc? -status=(?)
defaults to showing the n-most recent notes by modification date -
No state initially, then manually set to
Atomic
once reviewed/edited. Tasks are just notes with state:backlog|queue|in-progress|complete|not-planned
shears state <state> <to?>
- Tasks with subtasks don't need
on-hold
because the partially complete subtasks are self-documenting and can go back to thequeue
.
-
Operations: notes have
split-from: []string
ormerged-from: []string
to support handling links to deleted files or moving content- For readability, the file header is displayed via virtual text (in NVIM, Web, etc.)
- Consider
links: []string
to support bi-directional linking between notes (bi-directional part comes from database/tooling rather than in-code). Managed withshears link <from?> <to?>
shears split <name>?
andshears merge <from>? <to>?
. If either argument is missing, an interactive selection follows, which defaults to recent by modified date, then filters based on text input
-
What is the story for planning? For example, there are time-sensitive tasks, but they can't start today? Maybe
start-date
andhard-deadline
(andsoft-deadline
)? -
What about a concept of a
bookmarklet note
that is managed by a browser extension? This way bookmarked tabs can be archived more easily rather than clutter the bookmarks bar?