# Flower Engine ## Docs - [Model providers](https://mintlify.wiki/ritz541/flower-engine/advanced/model-providers.md): OpenRouter, Groq, DeepSeek, and Gemini integration with streaming support - [RAG system](https://mintlify.wiki/ritz541/flower-engine/advanced/rag-system.md): ChromaDB vector storage, embeddings, and semantic retrieval for lore and memory - [Running locally](https://mintlify.wiki/ritz541/flower-engine/advanced/running-locally.md): Local development setup for Python backend and Rust TUI - [commands.py](https://mintlify.wiki/ritz541/flower-engine/api/commands.md): Command handler for slash commands over WebSocket - [database.py](https://mintlify.wiki/ritz541/flower-engine/api/database.md): SQLite database models and managers for worlds, characters, messages, and sessions - [Handlers](https://mintlify.wiki/ritz541/flower-engine/api/handlers.md): WebSocket state synchronization and message broadcasting helpers - [llm.py](https://mintlify.wiki/ritz541/flower-engine/api/llm.md): LLM streaming integration for OpenRouter, DeepSeek, Groq, and Gemini - [main.py](https://mintlify.wiki/ritz541/flower-engine/api/main.md): FastAPI application, WebSocket endpoint, and startup initialization - [Prompt](https://mintlify.wiki/ritz541/flower-engine/api/prompt.md): System prompt building and narrative rule definitions - [rag.py](https://mintlify.wiki/ritz541/flower-engine/api/rag.md): RAG (Retrieval-Augmented Generation) manager using ChromaDB for semantic search - [State](https://mintlify.wiki/ritz541/flower-engine/api/state.md): Global state variables and persistence management - [Utils](https://mintlify.wiki/ritz541/flower-engine/api/utils.md): Utility functions for WebSocket messaging and asset loading - [Character YAML Schema](https://mintlify.wiki/ritz541/flower-engine/assets/character-schema.md): Complete reference for character asset YAML files - [Rules YAML Schema](https://mintlify.wiki/ritz541/flower-engine/assets/rules-schema.md): Complete reference for rules asset YAML files - [World YAML Schema](https://mintlify.wiki/ritz541/flower-engine/assets/world-schema.md): Complete reference for world asset YAML files - [/character Command](https://mintlify.wiki/ritz541/flower-engine/commands/character.md): Select and activate characters for your sessions - [/model Command](https://mintlify.wiki/ritz541/flower-engine/commands/model.md): Hot-swap AI models during runtime - [Commands Overview](https://mintlify.wiki/ritz541/flower-engine/commands/overview.md): Understanding the Flower Engine TUI command system - [/rules Commands](https://mintlify.wiki/ritz541/flower-engine/commands/rules.md): Manage content rules and NSFW mode - [/session Commands](https://mintlify.wiki/ritz541/flower-engine/commands/session.md): Create, continue, and delete storytelling sessions - [/world Commands](https://mintlify.wiki/ritz541/flower-engine/commands/world.md): Select worlds and attach lore dynamically - [Architecture overview](https://mintlify.wiki/ritz541/flower-engine/concepts/architecture.md): Understanding Flower Engine's split-brain architecture and component interactions - [The split-brain architecture](https://mintlify.wiki/ritz541/flower-engine/concepts/split-brain.md): Why Flower Engine separates Python AI orchestration from Rust TUI rendering - [System rules](https://mintlify.wiki/ritz541/flower-engine/concepts/system-rules.md): The hardcore narrative constraints that make Flower Engine a grounded, consequence-driven roleplay system - [WebSocket protocol](https://mintlify.wiki/ritz541/flower-engine/concepts/websocket-protocol.md): JSON message format for communication between Python brain and Rust face - [Contributing Overview](https://mintlify.wiki/ritz541/flower-engine/dev/overview.md): Guide to contributing to Flower Engine - project structure, setup, and development workflow - [Python Backend Development](https://mintlify.wiki/ritz541/flower-engine/dev/python-backend.md): FastAPI backend development guide - code style, patterns, and best practices for Flower Engine - [Rust TUI Development](https://mintlify.wiki/ritz541/flower-engine/dev/rust-tui.md): Ratatui terminal UI development guide - event handling, rendering, and WebSocket communication - [Testing Guide](https://mintlify.wiki/ritz541/flower-engine/dev/testing.md): Running tests and using the test client to verify Flower Engine functionality - [Configuration](https://mintlify.wiki/ritz541/flower-engine/guides/configuration.md): Set up config.yaml with API keys and engine settings - [Creating Characters](https://mintlify.wiki/ritz541/flower-engine/guides/creating-characters.md): Define character personas with YAML configuration - [Creating Worlds](https://mintlify.wiki/ritz541/flower-engine/guides/creating-worlds.md): Design rich world assets with YAML configuration - [Custom Rules](https://mintlify.wiki/ritz541/flower-engine/guides/custom-rules.md): Create custom rule YAML files to modify AI behavior - [Session Management](https://mintlify.wiki/ritz541/flower-engine/guides/session-management.md): Create, continue, and delete roleplay sessions - [Welcome to Flower Engine](https://mintlify.wiki/ritz541/flower-engine/index.md): A high-performance, split-architecture narrative system for immersive tabletop-style roleplaying - [Installation](https://mintlify.wiki/ritz541/flower-engine/installation.md): Detailed installation guide with system requirements and advanced setup - [Quickstart](https://mintlify.wiki/ritz541/flower-engine/quickstart.md): Get Flower Engine running in 5 minutes - [Dice Roll System](https://mintlify.wiki/ritz541/flower-engine/roadmap/dice-system.md): Planned mechanical friction system with D20 logic and narrative complications - [Sensory Anchoring](https://mintlify.wiki/ritz541/flower-engine/roadmap/sensory-anchoring.md): Planned environmental clocks and atmospheric anchoring system - [Stateful NPCs & Factions](https://mintlify.wiki/ritz541/flower-engine/roadmap/stateful-npcs.md): Planned system for persistent NPC relationships and faction standing ## OpenAPI Specs - [openapi](https://mintlify.wiki/ritz541/flower-engine/api-reference/openapi.json)