Compile Excel workbooks into semantic blocks and machine-readable artifacts
Project description
spreadsheet-engine
Open-source Spreadsheet Understanding Engine (spreadsheet_engine). Compiles Excel workbooks into semantic blocks, compressed formulas, UI render models, and retrieval chunks—without dumping raw cell grids.
Install from PyPI:
pip install spreadsheet-engine
# optional LLM block enrichment
pip install "spreadsheet-engine[llm]"
Or from git:
pip install "spreadsheet-engine @ git+https://github.com/your-org/spreadsheet-engine.git"
Quick start
cd spreadsheet-engine
uv sync --extra dev
# Compile workbook → ./out
uv run spreadsheet-engine compile input_1.xlsx --out ./out
# Single sheet
uv run spreadsheet-engine compile input_1.xlsx --sheet Dashboard --out ./out
Artifact outputs (public contract)
These files are consumed by downstream tools (e.g. spreadsheet-agent):
| File | Purpose |
|---|---|
artifact.json |
Semantic IR (blocks, tables, timelines) |
artifact_ui.json |
UI positioning + sparse cell runs |
artifact_retrieval.jsonl |
Embedding-ready chunks |
artifact_values.jsonl |
Resolved cell values for metric lookup |
Optional: --enrich-llm (requires spreadsheet-engine[llm] and OPENAI_API_KEY).
Architecture
Workbook → SparseCellStore → BlockDetection → Table/Timeline/Formula analysis
→ Semantic enrichment → Retrieval + UI emitters
Tests
uv sync --extra dev
uv run pytest spreadsheet_engine/tests -q
Place input_1.xlsx at the repo root for e2e tests, or rely on skipped tests when absent.
Related projects
- spreadsheet-agent — LangGraph Q&A over compiled artifacts (
pip installthis package, compile toout/, then use the agent).
License
MIT — see LICENSE.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file spreadsheet_engine-0.1.0.tar.gz.
File metadata
- Download URL: spreadsheet_engine-0.1.0.tar.gz
- Upload date:
- Size: 356.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.8.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
799b0e395f64b33de56300c0cf27e8317b75f50eeb469ac9c18b2acadfa5902c
|
|
| MD5 |
cc45996282a65b0712635c6b630f77f5
|
|
| BLAKE2b-256 |
e4c11ed988330014372b3fc0ed7fb564d59212bb9f077c51ed2f81affbed33ed
|
File details
Details for the file spreadsheet_engine-0.1.0-py3-none-any.whl.
File metadata
- Download URL: spreadsheet_engine-0.1.0-py3-none-any.whl
- Upload date:
- Size: 48.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.8.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c1e374c491513c7f33a5f7ad6695bbd1f5f4715849f745546db01da2b4a182d2
|
|
| MD5 |
1779dae8e1c82f727b728325d4459f30
|
|
| BLAKE2b-256 |
c56eaf062b0bd9b2a0c7c10d62497157ee24818e2738e01af5250509013efc77
|