Knowledge Hub
Comprehensive guides and references for the OpenFrame platform
OpenFrame Gen1 is Here · Our AI platform for autonomous IT is out of beta.
Comprehensive guides and references for the OpenFrame platform
This guide covers IDE recommendations, required tools, editor plugins, and environment configuration for working with OpenFrame OSS Tenant.
IntelliJ IDEA is the recommended IDE for working with the Spring Boot microservices. The Community Edition is free and sufficient for most development tasks.
Required Plugins:
@Data, @Builder, @Slf4j, etc.)Recommended Plugins:
.graphqls schema filesmanifests/ directoryImport the Project:
# Open IntelliJ IDEA and import as Maven project
# File → Open → select the root pom.xml
IntelliJ will automatically detect all Maven modules.
For working on the Rust components (clients/openframe-client and clients/openframe-chat Tauri backend):
rust-analyzer extensionVS Code Extensions for Rust:
rust-analyzer — Language server for RustEven Better TOML — For editing Cargo.toml filesTauri — Tauri-specific toolingFor working on clients/openframe-chat (React + Vite):
Required Extensions:
Biome — The project uses Biome (@biomejs/biome) for formatting and linting (replaces ESLint + Prettier)TypeScript (built-in)Tailwind CSS IntelliSense — The project uses Tailwind CSS 3Recommended Extensions:
GraphQL: Language Feature Support — For editing GraphQL queries in TypeScript filesTauri — For Tauri-specific IPC commands# Using SDKMAN (recommended for version management)
curl -s "https://get.sdkman.io" | bash
source "$HOME/.sdkman/bin/sdkman-init.sh"
sdk install java 21.0.3-ms
# Verify
java -version
# With SDKMAN
sdk install maven
# Or download from https://maven.apache.org/download.cgi
mvn -version
# Install rustup
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
source "$HOME/.cargo/env"
# Verify
rustc --version
cargo --version
# Using nvm (recommended)
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash
nvm install 20
nvm use 20
# Verify
node --version
npm --version
Configure these variables in your shell profile (~/.bashrc, ~/.zshrc, etc.) or in your IDE's run configurations.
# Enable development mode (local directories, relaxed TLS)
export OPENFRAME_DEV_MODE=1
These are typically set in each service's application-local.yml or passed as JVM arguments in your IDE:
# MongoDB
export SPRING_DATA_MONGODB_URI="mongodb://localhost:27017/openframe"
# Kafka
export SPRING_KAFKA_BOOTSTRAP_SERVERS="localhost:9092"
# Redis
export SPRING_DATA_REDIS_HOST="localhost"
export SPRING_DATA_REDIS_PORT="6379"
# NATS (Client Service)
export NATS_URL="nats://localhost:4222"
To set environment variables for a Spring Boot run configuration in IntelliJ:
The openframe-chat project uses Biome instead of ESLint/Prettier.
cd clients/openframe-chat
# Check linting issues
npx biome check .
# Fix auto-fixable issues
npx biome check --write .
# Format only
npx biome format --write .
Configure your editor to use Biome for format-on-save:
VS Code settings (.vscode/settings.json):
{
"editor.defaultFormatter": "biomejs.biome",
"editor.formatOnSave": true,
"[typescript]": {
"editor.defaultFormatter": "biomejs.biome"
},
"[typescriptreact]": {
"editor.defaultFormatter": "biomejs.biome"
}
}
The repository uses standard Git with no special hooks pre-configured. Recommended settings:
# Set your identity
git config --global user.name "Your Name"
git config --global user.email "your@email.com"
# Recommended: use main as the default branch name
git config --global init.defaultBranch main
| Tool | Status |
|---|---|
JDK 21 installed and JAVA_HOME set |
✅ / ❌ |
| Maven 3.9+ installed | ✅ / ❌ |
| Rust stable toolchain installed | ✅ / ❌ |
| Node.js 20 LTS installed | ✅ / ❌ |
| Tauri system dependencies installed | ✅ / ❌ |
| IDE configured with recommended plugins | ✅ / ❌ |
| Biome extension installed (VS Code) | ✅ / ❌ |