Getting Started
Project Structure
Understanding the FerrisKey project architecture and organization
Project Structure
FerrisKey follows a modern hexagonal architecture (port & adapters) with clear separation of concerns across multiple Rust workspaces and a TypeScript frontend. This guide explains how the project is organized and the purpose of each component.
Overview
ferriskey/
├── 📦 core/ # Core business logic library
├── 🌐 api/ # REST API server
├── 🖥️ front/ # Web console (TypeScript/React)
├── ⚙️ operator/ # Kubernetes operator
├── 📊 charts/ # Helm charts
├── 🐳 docker/ # Docker configurations
├── 🧰 cli/ # Command-line interface (planned)
└── 📜 sh/ # Shell scripts and utilities
Global structure
core/
├── src/ # Core domain logic and services
├──── lib.rs # Library entry point
├──── application/ # Application services
├──── domain/ # Domain models and business rules
├──── infrastructure/ # Infrastructure implementations
├── Cargo.toml # Core workspace manifest