A simple, clean microservice for managing user subscriptions and plans in a SaaS platform.
Built with Flask, SQLAlchemy, JWT auth, and SQLite (zero-config DB).
- JWT Authentication
- Plan Management: create & list subscription plans
- Subscription CRUD: subscribe, retrieve, update, cancel
- Status Handling: ACTIVE, CANCELLED (plus
end_date) - Zero-config DB: uses SQLite file
subscriptions.db - Clean Architecture: Flask blueprints, SQLAlchemy models, Marshmallow schemas
- Error Handling & Validation with Marshmallow
- Framework: Flask
- ORM: Flask-SQLAlchemy
- Auth: Flask-JWT-Extended
- Validation: Marshmallow
- DB: SQLite (via SQLAlchemy)
- Config: python-dotenv
- Python 3.8+ installed
- Git (to clone repo)
- (optional) Virtual environment tool