Skip to content

mnhpub/nexus

Repository files navigation

nexus – Org-mode Task Manager in Zig

A lightweight, high-performance terminal-based task manager inspired by Emacs Org-mode, written in Zig.

Features (MVP)

  • 📋 Parse .org files (headlines, TODO/DONE states, timestamps)
  • 🎮 Terminal UI with Vim-like keybindings
  • 📁 Tree navigation with collapse/expand
  • ✅ Toggle TODO ↔ DONE states
  • 🔍 Live search and agenda view
  • 💾 RocksDB-backed state persistence
  • 📤 Export to ICS calendar format

Quick Start

Prerequisites

  • Zig 0.13.0+ (install)
  • Linux (developed on Guarda Linux)
  • RocksDB development headers (usually: apt install librocksdb-dev)

Build

git clone <nexus-repo>
cd nexus
make build

Run

make dev
# or:
./build/nexus examples/test.org

Install

make install
# Then:
nexus my-tasks.org

Keybindings

Key Action
j/k Move cursor up/down
h/l Collapse/expand node
space Toggle TODO ↔ DONE
t Toggle TODO ↔ DONE
Enter Edit title
x/d Delete node
n New node
Tab/S-Tab Promote/Demote (indent)
Alt+Arrows Rearrange / Nest
/ Enter search mode
a Agenda view (by date)
f File browser (select/create files)
n Create new file (in browser)
q Quit

Architecture

  • src/org.zig – Org file parser (headlines, states, scheduling)
  • src/store.zig – RocksDB key-value store wrapper
  • src/ui_state.zig – UI state with disk persistence
  • src/ui/painter.zig – Component-based terminal rendering
  • src/terminal.zig – Raw terminal control (60 FPS)

Database

State is persisted to ~/.nexus/db/ using RocksDB:

  • ui:expanded:{node_id} → "true" | "false"
  • ui:metadata → cursor, scroll, mode, search query
  • node:{uuid} → JSON blob (full node data)
  • task:deadline:{date} → [uuid1, uuid2, ...]
  • tag:{name} → [uuid1, uuid2, ...]

Testing

make test           # Unit tests
make test-ui        # UI component rendering

Roadmap

Phase 2 (August 2026)

  • Custom field support (properties drawer)
  • Task priorities (A/B/C)
  • Recurring task templates
  • Multi-file support
  • Sync to calendar (CalDAV)

Phase 3 (Q4 2026)

  • Collaborative editing
  • REST API for external integration
  • Mobile companion app

License

MIT

Built with ❤️ in Zig

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors