Skip to content

Technology Stack ​

Technologies and frameworks used in IfAI.

Frontend Stack ​

Core Framework ​

TechnologyVersionDescription
React19.1.0UI framework with concurrent features
TypeScript5.8Type-safe JavaScript
Vite7.0Fast build tool and dev server

State Management ​

TechnologyVersionPurpose
Zustand5.0Lightweight state management
React ContextBuilt-inComponent-level state

UI Components ​

TechnologyVersionPurpose
Monaco Editor0.55VS Code's editor component
TailwindCSS3.4Utility-first styling
Lucide ReactLatestIcon library

Developer Tools ​

TechnologyPurpose
ESLintLinting
PrettierCode formatting
TypeScript ESLintTypeScript linting

Backend Stack ​

Core Framework ​

TechnologyVersionDescription
Rust1.80+Systems programming language
Tauri2.0Desktop app framework
Tokio1.48Async runtime

AI Integration ​

TechnologyPurpose
reqwestHTTP client for AI APIs
llama-cpp-2Local LLM inference
FastEmbedVector embeddings

Utilities ​

TechnologyPurpose
SerdeSerialization
TokioAsync runtime
tracingStructured logging
thiserrorError handling

Code Analysis ​

Parsing ​

TechnologyPurpose
Tree-sitterCode parsing (35+ languages)
tree-sitter-typescriptTypeScript/JavaScript
tree-sitter-rustRust
tree-sitter-pythonPython
tree-sitter-goGo
And 30+ more language parsers

Build & Release ​

Build Tools ​

TechnologyPurpose
ViteFrontend bundling
CargoRust compilation
Tauri CLIApp packaging

Platform Targets ​

PlatformOutput Format
macOS.app, .dmg (universal binary)
Windows.exe, .msi
Linux.AppImage, .deb, .rpm

Testing ​

Frameworks ​

TechnologyPurpose
VitestUnit testing
PlaywrightE2E testing
@testing-libraryComponent testing

Development Tools ​

Code Quality ​

ToolPurpose
ESLintJavaScript/TypeScript linting
ClippyRust linting
rustfmtRust formatting
PrettierCode formatting

Git Hooks ​

ToolPurpose
huskyGit hooks management
lint-stagedRun linters on staged files

Dependencies ​

Runtime Dependencies ​

Users need:

  • No additional dependencies for IfAI
  • Optional: Ollama for local LLMs

Build Dependencies ​

To build from source:

  • Node.js 18+
  • Rust 1.70+
  • Git
  • Platform-specific SDK (Xcode on macOS, etc.)

Version Compatibility ​

IfAI Version Matrix ​

IfAIReactRustTauri
0.3.x19.11.802.0

Upgrading Dependencies ​

Frontend ​

bash
# Check for updates
npm outdated

# Update packages
npm update

# Update React
npm install react@latest react-dom@latest

Backend ​

bash
# Update Rust toolchain
rustup update stable

# Update dependencies
cd src-tauri
cargo update

Next Steps ​

Released under the MIT License.