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.