LifeRPG_v2.0/modern/.github/workflows/ci.yml
TLimoges33 7fe4ae5365
🧙‍♂️ Transform LifeRPG into The Wizard's Grimoire - Production-Ready Application
 Major Features Added:
- Complete magical theming and rebranding from LifeRPG to The Wizard's Grimoire
- Production-grade React frontend with Tailwind CSS v4 and magical aesthetics
- Comprehensive analytics dashboard with Recharts integration (ScryingPortal)
- Push notifications system with PWA service worker support
- Drag & drop functionality using @dnd-kit for habit reordering
- Social features with friends system and leaderboards
- Performance optimization tools and monitoring
- Mobile app enhancement with PWA installation support

🏗️ Technical Infrastructure:
- Advanced service worker with offline support and background sync
- Zustand state management for scalable application state
- Production-ready UI component system with enhanced Button, Card, Input
- Progressive Web App (PWA) with manifest and app installation
- FastAPI backend with comprehensive API endpoints
- Docker containerization and CI/CD pipeline setup

📱 Progressive Web App Features:
- Offline functionality with intelligent caching
- Push notification support for habit reminders
- App installation on mobile and desktop platforms
- Background sync for offline data management
- Performance monitoring and optimization tools

🎨 User Experience:
- Magical wizard/grimoire theming throughout application
- Responsive design optimized for all device sizes
- Drag & drop habit management with smooth animations
- Interactive analytics with multiple chart types
- Social connectivity with friends and competitive features
- Comprehensive notification and performance settings

🔧 Developer Experience:
- Modern development stack with Vite and React
- Comprehensive testing setup and CI/CD pipelines
- Code quality tools with pre-commit hooks
- Docker development environment
- Detailed documentation and implementation guides

This represents a complete transformation from prototype to production-ready application with enterprise-grade features and magical user experience.
2025-08-30 17:32:42 +00:00

64 lines
2.1 KiB
YAML

name: CI
on: [push, pull_request]
jobs:
test-sqlite:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Check Python syntax
run: python -m py_compile modern/backend/*.py
- name: Install dependencies
run: python -m pip install -r modern/backend/requirements_full.txt
- name: Run migrations and tests (sqlite)
run: |
export DATABASE_URL=sqlite:///./modern/ci_test.db
alembic -c modern/alembic.ini upgrade head
PYTHONPATH=. pytest -q
test-postgres:
runs-on: ubuntu-latest
services:
postgres:
image: postgres:15
env:
POSTGRES_PASSWORD: postgres
ports:
- 5432:5432
options: >-
--health-cmd "pg_isready -U postgres" --health-interval 10s --health-timeout 5s --health-retries 5
steps:
- uses: actions/checkout@v4
- name: Check Python syntax
run: python -m py_compile modern/backend/*.py
- name: Install dependencies
run: python -m pip install -r modern/backend/requirements_full.txt
- name: Run migrations and tests (postgres)
run: |
export DATABASE_URL=postgresql://postgres:postgres@localhost:5432/postgres
alembic -c modern/alembic.ini upgrade head
PYTHONPATH=. pytest -q
test-mysql:
runs-on: ubuntu-latest
services:
mysql:
image: mysql:8
env:
MYSQL_ROOT_PASSWORD: root
MYSQL_DATABASE: test
ports:
- 3306:3306
options: >-
--health-cmd "mysqladmin ping -h localhost -uroot -proot" --health-interval 10s --health-timeout 5s --health-retries 5
steps:
- uses: actions/checkout@v4
- name: Check Python syntax
run: python -m py_compile modern/backend/*.py
- name: Install dependencies
run: python -m pip install -r modern/backend/requirements_full.txt
- name: Run migrations and tests (mysql)
run: |
export DATABASE_URL=mysql+pymysql://root:root@localhost:3306/test
alembic -c modern/alembic.ini upgrade head
PYTHONPATH=. pytest -q