Skip to content

irhyl/zero-inbox

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

zero-inbox

License: MIT

"when your to-do list needs its own compiler"


Introduction

Zero Inbox is what happens when a developer has one too many espresso shots and thinks: "My TODO list should compile." It's a CLI tool that turns your chaotic human thoughts into executable plans. Written in Rust because we like our memory safe and our compile times long.

  • Minimalist DSL: Write your day like code. Because buy(milk) is objectively better than "remember to buy milk"
  • Output options: Shell scripts, Markdown, JSON, or even a calendar file. Pick your poison.
  • Cross-platform: Works everywhere Rust does (which is everywhere except your toaster... yet)

Installation

Prerequisites

  • Rust toolchain - because living on the edge is more fun with memory safety
  • Git - for those who like their source code like their coffee: fresh and bitter

The Easy Way (Recommended for Normal Humans)

cargo install zibox

From Source

git clone https://github.com/zero-inbox/zero-inbox.git
cd zero-inbox
cargo install --path .
  • On Windows: Make sure %USERPROFILE%\.cargo\bin is in your PATH.
  • On macOS/Linux: $HOME/.cargo/bin should already be in your PATH, unless you like surprises.

Quick Start (Before You Change Your Mind)

  1. Write a .zbx file because we need more file extensions in our lives:

    @morning
      write(report) [2h]  # 2 hours? Optimistic.
      clear(inbox)        # As if
    
    drink(coffee) [15m]   # The most important task
    
  2. Compile your life choices:

    zibox daily_plan.zbx

    Defaults to Markdown because checklists give us the illusion of control.


Output Formats (Pick Your Poison)

  • Shell script:
    zibox daily_plan.zbx --output-format shell --output-file schedule.sh
    # Linux/macOS: bash schedule.sh
    # Windows: Use WSL or Git Bash. Or just stare at the script.
  • Markdown:
    zibox daily_plan.zbx --output-format markdown > plan.md
  • JSON:
    zibox daily_plan.zbx --output-format json > plan.json
  • Calendar (.ics):
    zibox daily_plan.zbx --calendar --output-file plan.ics
    # Import into Google Calendar, Outlook, or Apple Calendar. Or don't.

Advanced Usage (For the Ambitious)

  • Set work hours:
    zibox daily_plan.zbx --workday-start 09:00 --workday-end 18:00
  • Focus on tags:
    zibox daily_plan.zbx --focus-tag deepwork
  • Visualize schedule (ASCII Gantt, because why not):
    zibox daily_plan.zbx --visualize-schedule
  • Dry run (simulate, don't commit):
    zibox daily_plan.zbx --dry-run
  • Show the IR (for the truly curious):
    zibox daily_plan.zbx --show-ir
  • Custom config: Drop a .ziboxrc file (TOML) in your home or project directory. Because you like to tinker.

Platform Notes

  • Windows: Requires WSL/Git Bash for shell scripts. Everything else works natively
  • macOS/Linux: Should work out of the box. If not, check your Rust installation
  • Calendar: Standard .ics format supported by most calendar apps

Troubleshooting & FAQ (Read This Before Filing Issues)

  • Build errors?
    • Close anything using target/ (Windows loves file locks).
    • Run cargo clean and try again. Or just reboot, like it's 1998.
  • Shell script won't run?
    • Use bash schedule.sh in a real terminal.
  • Notifications not working?
    • Install notify-send (Linux) or use macOS's built-in notifications. Or just look at your screen.
  • More help?
    • See docs/USAGE.md. Or just experiment. What's the worst that could happen?

Features (because bullet points are fun)

  • Minimal, readable DSL for tasks
  • Multiple output formats (shell, markdown, JSON, calendar)
  • Task dependencies and priorities
  • Tag-based filtering and optimization
  • Configurable work hours and parallelism
  • Visual schedule output (for your inner artist)
  • Cross-platform, no external dependencies required for core features

Documentation


License

MIT licensed. Use responsibly - we're not liable for any productivity gains (or losses).


built with ❤️ by aditi ramakrishnan

About

zero-inbox is a rust powered CLI tool that lets you write your day as code, and then compiles it into an executable schedule.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors