Skip to content

tuffgniuz/lira-prototype

Repository files navigation

Lira

GitHub code size in bytes GitHub commit activity

/ˈliː.ra/ (LEE-rah)

noun

A state of smooth, continuous movement; flow without friction.

Summary

Lira is an opinionated, keyboard-first, local-first desktop system for independent work.

Introduction

Lira exists to solve a specific problem I have: managing multiple projects, tasks, and captured thoughts without breaking a keyboard-driven workflow.

A large part of Lira was vibe-coded to get a working prototype fast. Some of that code is messy, and there are parts I simply don’t like or wouldn’t write that way myself. Because of that, a full rewrite is very likely at some point.

That said, despite the rough edges, Lira is genuinely useful. I use it daily, and it already solves a real pain point for me.

Lira is built around my personal workflow, but anyone can use it. Just expect things to be incomplete, occasionally inconsistent, and very much in alpha.

Keymappings

Scope Keybinding Action
Global `Ctrl+`` Toggles the sidebar
: Opens the command launcher
Esc Closes the active modal or palette
Shift+H Moves backward through navigation history
Shift+L Moves forward through navigation history
Space u r Cycles the right rail between auto/pinned/hidden states
Space u p Pins the right rail to stay visible
Space u h Hides the right rail on responsive pages
Space u a Lets the right rail auto-show based on width
Leader sequences Space g t p Opens the Go To Page palette
Space l p Opens the Projects palette
Space l t Opens the Tasks palette
Space l g Opens the Goals palette
Space l i Opens the Inbox palette
Space n i Opens quick capture
Space n g Opens New Goal
Space n t Opens New Task
Space n p Opens New Project
Command palette Arrow Up / Arrow Down Moves selection
Ctrl+P / Ctrl+N Moves selection
Tab / Shift+Tab Cycles selection
Enter Confirms the highlighted item
Esc Closes the palette
Goals page Ctrl+H / Ctrl+ArrowLeft Focuses the previous column (left or center)
Ctrl+L / Ctrl+ArrowRight Focuses the next column (center or right)
j / ArrowDown Moves to next goal card or filter (based on active column)
k / ArrowUp Moves to previous goal card or filter (based on active column)
Tab / Shift+Tab Cycles selection (goal card or filter)
Enter Opens the focused goal
d (twice) Deletes the focused goal
Tasks page j / ArrowDown Moves to the next task
k / ArrowUp Moves to the previous task
Enter Opens the highlighted task
Task detail page Esc Closes the page when the editor is in normal mode
Shift+H / Shift+L Works in normal mode for history navigation
Projects page (List) Space p d Opens a palette listing docs linked to the current project
n Creates a new task
x Toggles the completion status of the highlighted task
d (twice) Deletes the highlighted task
1 Filters the list to show "To do" tasks
2 Filters the list to show "Completed" tasks
3 Filters the list to show "All" tasks
Projects board h / ArrowLeft Focuses the previous lane
l / ArrowRight Focuses the next lane
Tab / Shift+Tab Cycles lane focus
j Moves to the next task inside the focused lane
k Moves to the previous task inside the focused lane
n Creates a new task in the focused lane
Enter Opens the focused task
Shift+H Moves the selected task card to the lane on the left
Shift+L Moves the selected task card to the lane on the right
Editor Alt + Z Centers the current line in the view (works in Insert & Normal)
z z Centers the current line in the view (Normal mode)
Modal submit Enter Submits New Task, New Goal, New Project (single-line inputs/selects)
Ctrl+Enter / Cmd+Enter Submits New Task, New Goal (textarea)
Enter Submits New Project (description textarea)
Shift+Enter Inserts a newline in New Project description textarea

The dashboard always pins the right rail so momentum insights stay visible, while other pages follow the leader-controlled mode you set above.

Vault Storage

Lira currently uses a vault-based storage model.

  • a vault is a user-selected directory
  • if the selected vault path does not exist, Lira creates it
  • ~ paths such as ~/Documents/lira are supported
  • the primary database is stored as lira.sqlite3 in the root of your vault
  • captured inbox items are currently stored in .inbox/inbox.json inside the vault

Example:

/home/your-user/Documents/lira/lira.sqlite3

Local Development

Install dependencies:

pnpm install

Run the desktop app:

pnpm tauri dev

Run the web dev server only:

pnpm dev

Create a production frontend build:

pnpm build

About

Lira is a keyboard-first, local-first desktop system for turning thoughts into flow.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors