Target Audience
info
Fluvius Framework is designed for developers building complex, domain-driven applications with event sourcing and CQRS.
Primary Audience
Backend Developers
Developers building server-side applications who need:
- Domain-Driven Design: Structure applications around business domains
- Event Sourcing: Track all changes as events
- CQRS: Separate read and write operations
- Scalability: Build applications that can scale
Skills Needed:
- Python programming (intermediate to advanced)
- Understanding of async/await
- Familiarity with REST APIs
- Basic understanding of DDD concepts (helpful but not required)
Software Architects
Architects designing system architecture who need:
- Clear Boundaries: Well-defined domain boundaries
- Event-Driven Architecture: Event-based communication
- Microservices: Support for distributed systems
- Best Practices: Proven architectural patterns
Benefits:
- Enforces architectural patterns
- Provides clear structure
- Supports microservices
- Enables event-driven design
DevOps Engineers
Engineers deploying and maintaining applications who need:
- Observability: Built-in logging and monitoring
- Scalability: Horizontal scaling support
- Deployment: Easy deployment options
- Monitoring: Health checks and metrics
Benefits:
- Structured logging
- Event-based monitoring
- Multiple deployment options
- Health check endpoints
Secondary Audience
Full-Stack Developers
Developers working on both frontend and backend:
- API Generation: Automatic REST API generation
- Type Safety: Type hints for better integration
- Documentation: Auto-generated API docs
- Testing: Comprehensive testing support
Technical Leads
Leads managing development teams:
- Standards: Enforces coding standards
- Structure: Clear project structure
- Documentation: Self-documenting code
- Best Practices: Built-in best practices
Data Engineers
Engineers working with event streams:
- Event Log: Complete event history
- Event Replay: Replay events for analysis
- Streaming: Event streaming support
- Analytics: Event-based analytics
Experience Levels
Beginner
Can use Fluvius if:
- You know Python basics
- You understand REST APIs
- You're willing to learn DDD concepts
Learning Path:
- Start with Quick Start
- Read Core Concepts
- Follow Examples
- Build a simple domain
Intermediate
Ideal for developers who:
- Have Python experience
- Understand async programming
- Know REST API design
- Want to learn DDD/Event Sourcing
Learning Path:
- Review Architecture
- Study Core Concepts
- Build a real project
- Explore Advanced Topics
Advanced
Perfect for developers who:
- Have DDD experience
- Understand Event Sourcing
- Know CQRS patterns
- Want Python-native implementation
Learning Path:
- Review Architecture
- Explore Advanced Topics
- Contribute to framework
- Build complex systems
Use Cases by Role
Startup Founders
Building MVPs quickly:
- Fast development with Fluvius
- Scalable from the start
- Event sourcing for analytics
- Easy to pivot
Enterprise Developers
Building enterprise applications:
- Complex business logic
- Audit requirements
- Compliance needs
- Scalability requirements
Consultants
Building solutions for clients:
- Proven patterns
- Professional structure
- Easy to maintain
- Well-documented
Open Source Contributors
Contributing to Fluvius:
- Clear code structure
- Comprehensive tests
- Good documentation
- Active community
Prerequisites
Required Knowledge
- Python 3.12+: Modern Python features
- Async/Await: Understanding of async programming
- REST APIs: Basic API design knowledge
- Databases: Basic database concepts
Helpful Knowledge
- Domain-Driven Design: Understanding of DDD concepts
- Event Sourcing: Knowledge of event sourcing
- CQRS: Understanding of CQRS pattern
- FastAPI: Experience with FastAPI (optional)
Not Required
- Django/Flask: No need to know other frameworks
- EventStore: No need for external event store
- Microservices: Can start with monolith
- Kubernetes: Can deploy simply
Learning Resources
For Beginners
- Quick Start Guide: Get started in minutes
- Examples: Working code examples
- Core Concepts: Understand fundamentals
- Tutorials: Step-by-step guides
For Intermediate
- Architecture Docs: Understand system design
- Usage Guides: Practical implementation
- API Reference: Complete API docs
- Best Practices: Learn from experts
For Advanced
- Advanced Topics: Extend the framework
- Source Code: Study implementation
- Contributing Guide: Contribute back
- Design Decisions: Understand why
Getting Started
Ready to start? Here's your path:
- Install Fluvius: Get it running
- Quick Start: Build your first domain
- Core Concepts: Learn fundamentals
- Examples: See real examples
Next Steps
- Learn about Core Principles
- Check out Use Cases
- Start with Getting Started