A lightweight AI-powered text editor built with Rust, egui, and llama.cpp.
It compiles to a web app or desktop app.
- Modern, easy-to-use text editor
- Integrated AI text generation and analysis
- Cross-platform (desktop and web)
- Offline capable
Itty Bitty AI is built with a true cross-platform architecture:
- Single Codebase: Written in Rust and compiled to both native binaries and WebAssembly
- Desktop Native: Runs as a native application on Windows, macOS, and Linux with native performance and UI rendering
- Web Enabled: Compiles to WebAssembly and runs in any modern browser using Canvas-based rendering
- Consistent Experience: The same features and interface on all platforms thanks to egui's abstraction layer
The application use pure Rust immediate mode GUI framework that:
- Provides native-feeling interfaces on desktop platforms
- Renders via Canvas API when running in browsers
- Maintains the same look, feel, and functionality across all environments
Make sure you have the latest version of stable Rust by running:
rustup update stableYou can compile and run the application as a web page:
-
Install the required target:
rustup target add wasm32-unknown-unknown
-
Install Trunk:
cargo install --locked trunk
-
Build and serve:
trunk serve
-
Open
http://127.0.0.1:8080/index.html#devin your browser.- Adding
#devskips caching, allowing you to see the latest changes during development.
- Adding
To run the application locally:
# Build and run in debug mode
cargo run
# Build and run in release mode (recommended for better performance)
cargo run --releaseOn Ubuntu/Debian:
sudo apt-get install libxcb-render0-dev libxcb-shape0-dev libxcb-xfixes0-dev libxkbcommon-dev libssl-devOn Fedora:
dnf install clang clang-devel clang-tools-extra libxkbcommon-devel pkg-config openssl-devel libxcb-devel gtk3-devel atk fontconfig-develTo build for web deployment:
- Run
trunk build --release - Deploy the generated
distdirectory to your preferred hosting service.
This application is built with:
- egui for the UI framework - a portable immediate mode GUI framework written in Rust
- eframe-template for the eframe boilerplate
- candle for the machine learning backend
This project is licensed under the MIT License.
