Skip to content

Repository files navigation

Notema cycling through its bundled themes

Notema 間

A terminal-based Markdown journaling app with optional end-to-end encryption and multi-device sync.

latest releasecontinuous integrationlicense


Notema (/noʊˈtɛ.mɑː/) combines note with the Japanese concept of 間 (ma) — the pause, interval, or space between things, in time as well as on the page. Sync runs through file-syncing tools you already use, such as Syncthing, Nextcloud, or Dropbox.

Entries are plain markdown files with TOML front-matter, organized by date on disk. Nothing is locked into a proprietary format — your journal is just a folder of .md files (or .md.age files once encryption is on). It runs anywhere Rust runs, including Android via Termux, and stays readable on light, dark, and monochrome/e-ink terminals.

Features

  • TUI — three-pane browser (journals / entries / reader) with mouse and keyboard (arrows + vim keys) navigation, live rendered markdown, in-terminal image rendering, and entry metadata.
  • Fuzzy search across the whole corpus, including metadata.
  • Themes — TOML theme files with flat or bordered chrome, dark/light variants, a live-preview picker, and hot reload on edit.
  • Rich metadata per entry — tags, people, activities, feelings, a mood score (-5…+5), and a location. Located entries also record the weather, air quality, and sun/moon data for that place and time.
  • Built-in editor — write and edit entries in a fullscreen editor with markdown syntax highlighting.
  • Day One import, photos and metadata included.
  • End-to-end encryption — per-device age keys, a signed device roster, and an approval flow for new devices. Private keys never leave the device.
  • Decrypted FUSE mount — browse an encrypted journal as a writable, decrypted filesystem.

Install

Download a binary for your platform from the releases page, or build from source — see docs/BUILDING.md.

Quick start

notema # launch the full TUI (walks through setup on first run)
notema log "Had a good day"# quick entry from the command line
notema log # compose an entry in the fullscreen editor

Notema has no server of its own — keep your journal on one machine, or sync its folder with any file-sync tool you like and it appears on all your devices. With encryption on, that synced folder holds only ciphertext and public keys; each device's individual private key stays local, so whoever hosts the sync only ever sees ciphertext and can't read your entries.

Documentation

License

See LICENCE (EUPL v1.2).

Attribution

Run notema licenses to print these credits with the full license texts of every third-party Rust dependency.

Disclaimer

This was built for personal use and relies heavily on AI-generated code. While I've tested everything and use it daily, I take no responsibility for any issues you might encounter. Use at your own risk.

About

A terminal-based Markdown journaling app

Topics

Resources

Stars

64 stars

Watchers

0 watching

Forks

Releases

Used by

Contributors

Languages