Community Pulse v0.3.0
This release introduces a major backend architecture refactor focused on maintainability, scalability, and modern Flask/SQLAlchemy practices.
Architecture
- introduced dedicated Service Layer
- removed ORM/business logic from blueprints
- simplified route handlers
- centralized validation and serialization
SQLAlchemy
- migrated models to SQLAlchemy 2.0 typed declarative mapping
- replaced legacy backref relationships with explicit back_populates
- improved model import stability and circular dependency handling
Pydantic Integration
- centralized Pydantic validation handling
- added automatic serialization through custom PydanticJSONProvider
- removed repetitive jsonify and manual model_dump calls
Statistics
- removed redundant Statistic table
- implemented dynamic aggregation using SQLAlchemy func.count()
Internal Improvements
- stabilized Flask-Migrate discovery
- simplified application factory responsibilities
- improved DTO and response serialization flow
Result
The backend now follows a cleaner layered architecture and is prepared for:
- PostgreSQL migration
- frontend integration
- advanced analytics
- future scaling
Close #13