System Requirements
Before installing Flower Engine, ensure your system meets these requirements:Operating System
- Linux
- macOS
- Windows
Recommended: Ubuntu 20.04+, Debian 11+, Fedora 36+, or any modern Linux distribution.All dependencies install cleanly on most distributions.
Hardware Requirements
| Component | Minimum | Recommended |
|---|---|---|
| RAM | 4GB | 8GB+ |
| Disk Space | 1GB | 2GB+ |
| CPU | Dual-core | Quad-core+ |
| GPU | Not required | Not required |
Flower Engine uses CPU-based embeddings (
all-MiniLM-L6-v2) for maximum compatibility. No GPU or CUDA drivers required!Software Dependencies
Python
Version: 3.12 or newerCheck version:
Rust
Version: Latest stableCheck version:
Git
Required for cloningCheck version:
API Keys
You need at least one API key from these providers:OpenRouter (Recommended)
OpenRouter (Recommended)
Best for: Access to 100+ models from one API
- Sign up at openrouter.ai
- Navigate to Keys
- Create a new key
- Add credits to your account
sk-or-v1-...Google Gemini
Google Gemini
Best for: Free tier and fast responses
- Go to Google AI Studio
- Create an API key
- Note the free tier limits
AIzaSy...DeepSeek
DeepSeek
Best for: Reasoning and complex tasks
- Sign up at platform.deepseek.com
- Generate an API key
- Add credits if needed
sk-...Groq
Groq
Best for: Ultra-fast inference
- Sign up at console.groq.com
- Create an API key
- Check rate limits
gsk_...Installation Methods
Method 1: Automated Setup (Recommended)
The fastest way to get started. Our setup script handles everything:Method 2: Manual Installation
For advanced users who want full control:Install dependencies
fastapi>=0.100.0- Backend web frameworkuvicorn>=0.23.0- ASGI serverwebsockets>=11.0.3- WebSocket supportchromadb>=0.4.10- Vector databaseopenai>=1.3.0- OpenAI-compatible clientsentence-transformers>=2.2.2- Local embeddingspyyaml>=6.0.1- YAML parsinggoogle-genai>=0.1.0- Gemini support
Configuration
Basic Configuration
Editconfig.yaml with your API keys and preferences:
config.yaml
Advanced Configuration
Custom database location
Custom database location
Change the ChromaDB storage path:Useful for:
- Storing data on a different drive
- Sharing databases across installations
- Backing up to cloud storage
Multiple OpenRouter accounts
Multiple OpenRouter accounts
You can switch between different OpenRouter keys for different rate limits:Comment/uncomment as needed.
Custom model lists
Custom model lists
Add any OpenAI-compatible model:The engine will fetch pricing and availability at startup.
Asset Structure
Flower Engine uses YAML files to define worlds, characters, and rules. The default structure:Example World File
assets/worlds/cyberpunk.yaml
Example Character File
assets/characters/mercenary.yaml
Example Rules File
assets/rules/gritty.yaml
Learn more
See our complete guide to creating custom worlds, characters, and rules.
Running Flower Engine
Using the Launch Script
The simplest way to start:- Clears the terminal
- Displays the Flower Engine ASCII banner
- Starts the FastAPI backend on port 8000
- Waits for backend initialization (with pretty loading animation)
- Launches the Rust TUI
- Handles graceful shutdown on
Ctrl+C
Manual Launch (for development)
Run backend and frontend separately:Verifying Installation
Test each component individually:Troubleshooting
Python version too old
Python version too old
If macOS:Then use
python3 --version shows < 3.12:Ubuntu/Debian:python3.12 explicitly in commands.Rust not found
Rust not found
After installing Rust, you need to reload your shell:Or restart your terminal. Verify with:
Port 8000 already in use
Port 8000 already in use
Find and kill the conflicting process:Or change the port in
start.sh and tui/src/main.rs.ChromaDB import errors
ChromaDB import errors
ChromaDB sometimes has issues with system dependencies:Linux:macOS:Then reinstall:
Sentence-transformers download fails
Sentence-transformers download fails
The embedding model downloads from Hugging Face. If blocked:
- Download manually from huggingface.co/sentence-transformers/all-MiniLM-L6-v2
- Place in
~/.cache/huggingface/hub/ - Or set custom cache:
WebSocket connection refused
WebSocket connection refused
Ensure the backend is fully started before the TUI connects:
- Start backend manually:
- Wait for “Application startup complete”
- In another terminal, start TUI:
Performance issues
Performance issues
If the TUI feels sluggish:
- Use release builds:
- Check backend logs for slow API responses
- Consider switching to a faster model like
gemini-3-flash
Uninstallation
To completely remove Flower Engine:Next Steps
Quick Start Guide
Get your first session running in 5 minutes.
Understanding Architecture
Learn how the split-brain system works.
Configuration Guide
Deep dive into all configuration options.
Creating Content
Build custom worlds, characters, and rules.