Comprehensive guides and references for the OpenFrame platform
Welcome to the OpenFrame development documentation. This section provides comprehensive guides for developers working with the OpenFrame platform, from initial environment setup to advanced architecture concepts.
OpenFrame is built on a modern, microservice-based architecture using:
flowchart TB
subgraph "Frontend Layer"
UI[Web Dashboard]
Chat[Desktop Chat Client]
end
subgraph "API Gateway Layer"
Gateway[Gateway Service]
Auth[Authorization Server]
end
subgraph "Core Services"
API[API Service]
External[External API Service]
Client[Client Service]
Stream[Stream Service]
Management[Management Service]
end
subgraph "Data Layer"
MongoDB[(MongoDB)]
Cassandra[(Cassandra)]
Pinot[(Apache Pinot)]
Redis[(Redis)]
end
subgraph "Message Layer"
Kafka[(Kafka)]
NATS[(NATS)]
end
UI --> Gateway
Chat --> Gateway
Gateway --> API
Gateway --> External
Gateway --> Auth
API --> MongoDB
API --> Pinot
API --> Kafka
Stream --> Kafka
Stream --> Cassandra
Stream --> Pinot
Client --> MongoDB
Client --> NATS
Start by setting up your local development environment with all required dependencies:
# Clone the repository
git clone https://github.com/flamingo-stack/openframe-oss-tenant.git
cd openframe-oss-tenant
# Follow the Environment Setup guide
# This includes Java 21, Maven, Node.js, and database dependencies
Get the platform running locally for development and testing:
# Start development dependencies (databases, message brokers)
./scripts/dev-start-dependencies.sh
# Build and start all services
mvn clean install
./scripts/start-all-services.sh
# Start the frontend development server
cd openframe/services/openframe-frontend && npm run dev
Review the architecture documentation to understand:
Follow testing best practices:
# Run unit tests
mvn test
# Run integration tests
mvn verify
# Run end-to-end tests
./scripts/run-e2e-tests.sh
When ready to contribute:
OpenFrame enforces tenant isolation at multiple levels:
The platform uses event streaming for:
Mingo AI is integrated throughout the platform via:
openframe-oss-tenant/
├── openframe/services/ # Spring Boot service applications
│ ├── openframe-api/ # Internal REST + GraphQL API
│ ├── openframe-gateway/ # API gateway and security
│ ├── openframe-client/ # Agent lifecycle management
│ └── openframe-frontend/ # Web UI (Next.js-style)
├── clients/ # Desktop clients and tools
│ ├── openframe-client/ # Device agent (Rust)
│ └── openframe-chat/ # Desktop chat client (Tauri)
├── scripts/ # Development and deployment scripts
├── manifests/ # Kubernetes and Docker configurations
└── integrated-tools/ # Tool-specific configurations
Ready to start developing? Begin with these guides:
For specific development workflows, jump to the relevant section based on your role and goals.
Happy coding! The OpenFrame platform is designed to be developer-friendly and extensible. Join our community for support and collaboration.