React + TypeScript + Vite application.
src/— React frontend components, services, types, stylesengine/— Core Excel Engine (Python + openpyxl)excel_engine.py— MIND-010 Core Excel Engine implementationcreate_fixture.py— Sample workbook generator__init__.py— Package init
tests/— Automated teststest_engine.py— 23 tests covering the Core Excel Engine
public/— Static assets (test.xlsx, icons, HTML)fixtures/— Test fixtures (sample.xlsx)
The Core Excel Engine is implemented in Python using openpyxl.
- Read: Load
.xlsx, detect sheets, read cells, headers, dimensions - Modify: Rename/create/delete sheets, add/delete rows/columns, update cells
- Write: Save as
.xlsxfile - Validate: Re-open output, verify sheet count and structure match
- Pipeline:
load → modify → save → validatein one call
cd /data/data/com.termux/files/home/memind
python3 -m pytest tests/test_engine.py -v- React + TypeScript + Vite
xlsx(SheetJS) library for browser-side spreadsheet operationsspreadsheetService.tshandles all file parsing/export- Components: Spreadsheet, FileDropzone, SpreadsheetToolbar, SpreadsheetGrid, SheetTabs, WorkbookStatus, CellEditor
npm run devnpm run build- Supported:
.xlsxonly (.xls,.csvare in the frontend but Python engine handles.xlsx) - Preserved (expected): Formulas, merged cells, and formatting are preserved via openpyxl round-trip for unmodified features
- Not guaranteed: Advanced charts, external links, complex Excel-specific features, full workbook metadata
- Not Yet Supported: AI commands, Pivot, charts, File Enhancer, dashboard, DOCX/PDF/PPTX generation, authentication
- Backend API layer (FastAPI) to expose Core Excel Engine to frontend
- File upload/download REST endpoints
- AI natural-language commands (next milestone)
- SheetJS integration for read-only viewing in browser (already partially implemented)
- More complex operations (formulas, data validation, named ranges)
Frontend/UI (React)
↓
spreadsheetService.ts (SheetJS)
↓
Core Excel Engine (Python + openpyxl) [NEW]
↓
File System (.xlsx files)
The Python engine is decoupled from the UI and can be tested independently.
The openpyxl library preserves formulas, merged cells, and formatting
for features not being modified. Advanced Excel-specific features
(charts, external links) are not guaranteed.