office-toolkit
Read, write, and edit Word, Excel, and PowerPoint files — from pure Rust.
office-toolkit is a Rust library for creating and editing real .docx, .xlsx, and .pptx files. No Microsoft Office installation, no VBA, no shelling out to LibreOffice, and no unsafe FFI bindings to a C library — just a Cargo.toml line and typed Rust structs that map directly onto a document, a workbook, or a presentation. Word, Excel, and PowerPoint each get their own API, built on shared conventions, so once you know one format the others feel familiar rather than foreign.
- One consistent API shared across Word, Excel, and PowerPoint
- True round-trip support: open, edit, and save real Office files without silently dropping content
- An original OOXML implementation, not a wrapper around another library
- Tested against real files produced by actual Word, Excel, and PowerPoint installations
Time-Compute
A date and time library with an API that mirrors chrono, one-to-one.
time_compute rebuilds calendar arithmetic from scratch behind a public API designed to match chrono's, method for method. Projects already using chrono can typically switch over by changing the import path alone, while gaining calendar and festival extensions chrono doesn't provide, such as computing the date of Easter for any given year.
- Public API designed to mirror chrono's own surface, for easy migration
- An independent implementation, with no chrono source code involved
- Extra calendar and festival calculations not found in chrono
- Optional serde, rkyv, and locale-aware formatting support, mirroring chrono's own feature set
chess-scid-rw
A pure-Rust reader and writer for SCID chess database files.
chess-scid-rw decodes and writes SCID's compact si4 and si5 database formats: the index, the name tables (players, events, sites, rounds), and every game's full move tree, including nested variations, comments, and NAGs. Games go in and out as plain PGN text, so no knowledge of SCID's binary layout is required.
- Full two-way support for both the si4 and si5 SCID formats
- Zero external dependencies — only the Rust standard library
- A simple PGN-in, PGN-out API
- Built from the real needs of a chess GUI project
Vendetta Chess GUI
A professional chess graphical interface, written entirely in Rust.
Vendetta Chess GUI is a full UCI client for driving external chess engines such as Stockfish or Leela: real-time multi-line analysis, a reference game database imported from PGN or SCID files, an interactive opening tree with live statistics, and engine tournaments, all from a single desktop interface. It contains no internal chess engine of its own — it's built to get the most out of the engines you already use.
- Full UCI protocol support with multi-engine management
- PGN and SCID (.si4/.si5) reference database browsing with an interactive opening tree
- Real-time multi-PV analysis with evaluation graphs
- Built-in engine tournaments and training tools, for beginners through advanced players
Vendetta Chess Engine
A professional UCI chess engine, written entirely in Rust.
Vendetta Chess Engine is a UCI-compatible chess engine built around a simple philosophy: correctness and stability before raw speed. It implements modern search techniques — transposition tables, singular extensions, static exchange evaluation, and Lazy SMP multithreading among others — and is compatible with any UCI interface, including Arena, CuteChess, SCID, and Lichess bots.
- Full UCI protocol — works with any UCI-compatible interface
- Zero external dependencies for the core engine
- Estimated playing strength of roughly 2400 Elo, confirmed empirically against Stockfish at limited Elo
- Developed openly in collaboration with Claude (Anthropic), disclosed transparently in the project's own README