| Crates.io | piki |
| lib.rs | piki |
| version | 0.2.0 |
| created_at | 2025-10-28 06:34:05.47957+00 |
| updated_at | 2025-11-26 09:15:03.372503+00 |
| description | A simple personal wiki application |
| homepage | |
| repository | https://github.com/roblillack/piki |
| max_upload_size | |
| id | 1904271 |
| size | 108,310 |
Command-line interface for Piki personal wiki
[!IMPORTANT]
This is the crate-level README for thepikiCLI only. For overall Piki documentation, see the main repo.
A fast, lightweight CLI for managing your personal wiki with plain Markdown files. Perfect for quick edits, scripting, and terminal-based workflows.
cargo install piki
# Initialize your wiki
mkdir ~/.piki
cd ~/.piki
echo "# My Wiki" > frontpage.md
# Edit interactively (fuzzy picker)
piki
# Edit a specific note
piki edit frontpage
# List all notes
piki ls
# View a note
piki view frontpage
piki [options] [command]
Options:
-d, --directory DIRECTORY Directory containing markdown files (default: ~/.piki)
Commands:
edit [name] Edit a note (opens in $EDITOR or $VISUAL, defaults to vim)
view [name] View a note
ls List all notes
log [-n NUM] Show git commit log (if using git)
run [cmd] Run a shell command inside the notes directory
help Show help information
Create a ~/.pikirc file to define custom aliases and shortcuts:
[aliases]
# Daily notes
today = "code . -g daily/$(date +'%Y-%m-%d').md"
standup = "vim work/standup-$(date +'%Y').md"
# Git shortcuts
status = "git status -u"
sync = "git ci -m 'Auto-sync' && git pull --rebase && git push"
push = "git commit -m 'Auto-sync' && git push"
# Open in your favorite editor/IDE
code = "code ."
cfg = "vim ~/.pikirc"
# Launch GUI from CLI
g = "piki-gui"
When no command is specified, Piki opens an interactive fuzzy picker for quickly finding and editing notes:
piki -d ~/my-wiki
# Type to filter notes, arrow keys to navigate, Enter to edit
# Daily note workflow
piki edit "daily/$(date +'%Y-%m-%d')"
# Quick capture
piki edit inbox
# Browse and edit
piki -d ~/my-wiki # Interactive picker
# View without editing
piki view project-ideas
# Git integration
piki run git status
piki log -n 10
Piki works seamlessly with Git for version control:
cd ~/.piki
git init
git add .
git commit -m "Initial wiki"
# Use piki's git commands
piki log
piki run git status
# Or use aliases in .pikirc
piki sync # Commit, pull, push
piki push # Commit and push
MIT License