23735aee3cddc4e9f9f6b45d22b69a927ca08185
Reinstalling deleted files Ely never installed, and a busy file left a half-removed install. The installer now writes the top-level names it installs (.ely-files, from packaging/windows/files.sh); upgrades and uninstall remove only those, and releases before the list only in the folder the registry names. It checks that every listed file can be written, moves them all into .ely-old, and on any refusal puts them back and exits 2. A file that cannot be written fails the install, which removes what it created and restores the old release. tests/scripts/windows-installer.sh covers each case. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Ely Office
Offline-first desktop apps in Rust and GPUI. Files stay in your folders; no account, no cloud service.
| App | Does | Engine |
|---|---|---|
| ElyDoc | Word processing (DOCX, ODT) | LibreOfficeKit |
| ElyTable | Spreadsheets (XLSX, ODS, CSV) | LibreOfficeKit |
| ElyShow | Presentations (PPTX, ODP) | LibreOfficeKit, system media |
| ElyPDF | PDF reading and editing, OCR, signatures | MuPDF, Tesseract |
| ElyTree | Git client | Git |
| ElyMark | Markdown | markdown-rs, RaTeX, mermaid-rs-renderer |
| ElyMail, ElyAgent | Second release | — |
Build (macOS)
scripts/doctor.sh # toolchain versions
scripts/fetch-references.sh # upstream sources at pinned commits
scripts/build-libreoffice.sh # patched LibreOffice 26.2.6.3 (about an hour)
scripts/build-mupdf.sh # patched MuPDF 1.28.5
scripts/build-git.sh && scripts/fetch-git-lfs.sh
scripts/fetch-tessdata.sh
cargo build -p ely-lok --bins -p ely-pdf-engine --bins
cargo run -p ely-doc # or ely-table, ely-show, ely-pdf, ely-tree, ely-mark
Packages: packaging/macos/release.sh writes each app's .app and .dmg, the source archive and the upstream source archive (patched MuPDF, Git) to dist/. Linux and Windows recipes are in packaging/linux and packaging/windows; they have not been run on those systems.
Tests
cargo test --workspace, the window scripts in tests/scripts (macOS, Accessibility permission), and the benchmark tests/perf/bench.py.
Documents
docs/help.md |
Help: opening and saving, recovery, offline limits, repositories |
docs/compatibility.md |
Versioned compatibility list |
docs/accessibility.md |
Accessibility and language review |
docs/perf/ |
Benchmark records |
docs/licenses.md |
Licences and sources |
Licence
AGPL-3.0-or-later (LICENSE). Third-party components keep their own licences; see docs/licenses.md.
Description
Ely Office: offline-first desktop apps in Rust and GPUI
https://office.elygpui.com
52 MiB
7 Stars
1 Watchers
0 Forks
Releases
5
Ely Office 0.1.5
Latest
Languages
Rust
81.4%
TypeScript
5.2%
Shell
4.6%
C
3.7%
Python
3.1%
Other
1.9%