kiroku-tui

Crates.iokiroku-tui
lib.rskiroku-tui
version0.1.4
created_at2026-01-21 11:46:56.493526+00
updated_at2026-01-25 09:05:45.737279+00
descriptionA simple, terminal-based personal journaling and note-taking tool.
homepage
repositoryhttps://github.com/gab-dev-7/kiroku
max_upload_size
id2058967
size117,735
Gabriel Windlin (gab-dev-7)

documentation

README

kiroku-tui

kiroku (記録) — Japanese for "record", "document", or "archive".

A simple, terminal-based personal journaling and note-taking tool written in Rust.

kiroku-tui helps you manage a collection of markdown notes directly from your terminal. It stores your notes in ~/kiroku and integrates with Git for easy synchronization.

Features

  • Terminal Interface: Clean TUI built with ratatui.
  • Fuzzy Search: Quickly find notes by title.
  • External Editor: Opens notes in your preferred editor (Vim, Nano, VS Code, etc.).
  • Git Sync: Built-in command to add, commit, and push changes to a remote repository.
  • File Watching: Automatically updates the list when files are changed externally.
  • Clipboard Integration: Copy note content or file paths directly to your clipboard.

Installation

Ensure you have Rust and Cargo installed.

From Crates.io (Recommended)

cargo install kiroku-tui

From Git

cargo install --git https://github.com/gab-dev-7/kiroku

Note: After installation, ensure that ~/.cargo/bin is in your PATH environment variable to run kiroku from any directory.

Usage

Run the application:

kiroku

On the first run, it will create a ~/kiroku directory. You can initialize a git repository there if you want to use the sync feature:

cd ~/kiroku
git init
# Add your remote...

Keybindings

Normal Mode

  • n: Create a new note
  • Enter: Edit the selected note
  • d: Delete the selected note
  • g: Sync with Git (add, commit, push)
  • /: Enter search mode
  • j / k: Navigate up/down
  • y: Copy note content to clipboard
  • Y: Copy note file path to clipboard
  • q: Quit
  • F12: Toggle debug logs

Search Mode

  • Type to filter notes
  • Enter: Keep current filter and return to list
  • Esc: Clear search and return to list

Configuration

You can configure kiroku by creating a file at ~/.config/kiroku/config.toml.

Example config.toml:

# Command to open your editor.
# If omitted, defaults to $EDITOR environment variable or "vim".
editor_cmd = "nvim"

# Auto-sync is currently reserved for future use
auto_sync = false
Commit count: 78

cargo fmt