Skip to content
librastevePublic

About

Spreadsheets meet Markdown for Omarchy. Pure Rust.

Topics

Resources

Stars

11 stars

Watchers

1 watching

Forks

Repository files navigation

Omasheet

Omasheet

What Markdown is to text, Omasheet is to numbers.

📄 String as the source of truth

The spreadsheet becomes a readable, diffable and composable document, not just a binary XLSX Workbook.

📊 Columns as the computational model

Named, typed data and array expressions connect spreadsheet authoring to dataframe-style transformations.

🔢 Exact decimal arithmetic as a semantic guarantee

Numeric values retain their exact decimal meaning instead of floating-point approximations: 0.1 + 0.2 is exactly 0.3. Numbers are held the way Polars holds them — a 64-bit Int and a 38-digit Decimal — so a value too wide to hold is reported rather than quietly rounded. The last 8 of those 38 digits are working room: held but neither compared nor shown, so that two ways of reaching one number agree — 1/3 * 3 is 1 and 2/7 + 3/7 == 5/7 is true. A Fraction column shows what it holds as a fraction, 1/7 and 2 3/4.

Automatically follows system dark/light mode.

const TaxRate = 20%

sheet Sales

| Month | Revenue | Cost | Profit | Tax | Running |
| ----- | ------- | ---- | ------ | --- | ------- |
| Jan   | 10000   | 6000 | *      | *   | *       |
| Feb   | 12000   | 7000 | *      | *   | *       |
| Mar   | 15000   | 8000 | *      | *   | *       |

Profit  := Revenue - Cost
Tax     := Profit * TaxRate
Running := [Revenue; 0..*].sum()

Install

From OmaStore — Omasheet is listed under Office in OmaStore, the community app store for Omarchy. Search for it there and click install.

With pacman:

curl -fsSL https://raw.githubusercontent.com/librasteve/omasheet/main/install.sh | bash

Update: run the same line again. Uninstall: sudo pacman -R omasheet.

Build from source (e.g. on macOS ARM and other Linux): install Qt 6 and Rust (brew install qt rust), then cargo build --release --package omasheet-ui; the binary is at target/release/omasheet.

Building directly from the git repo instead of a local clone needs --locked (cargo install --git https://github.com/librasteve/omasheet --locked omasheet-ui), since omasheet depends on a crate whose compatible releases are all yanked, and only the version pinned in this repo's Cargo.lock can still be resolved.

Run

omasheet                                # the app, on a new file
omasheet examples/budget.omx            # the app, on a .omx, .csv, .json or .xlsx file
omasheet print examples/budget.omx      # print the calculated file
omasheet eval '1/3 + 1/6'               # 0.5, exactly
omasheet export examples/budget.omx --xlsx [or --csv | --json | --parquet]
omasheet render examples/report.md --html

AI Skill

Prompt your favorite AI with:

Please load the Omasheet skill from https://raw.githubusercontent.com/librasteve/omasheet/main/.claude/skills/omasheet/SKILL.md and follow its instructions when creating, checking, or converting spreadsheets.

Docs

Early and changing. MAY CONTAIN ERRORS.

Copyright (c) 2026 Stephen Roe. MIT licence; see LICENSE.

About

Spreadsheets meet Markdown for Omarchy. Pure Rust.

Topics

Resources

Stars

11 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages