A scalable CMS platform with RSS feed integration and AI-powered article generation.
- Frontend: React SPA with Redux and CKEditor
- Backend: Django REST Framework with Microservices architecture
- Task Queue: Celery with Redis
- Database: PostgreSQL
- Storage: AWS S3 (configurable)
pavilion-gemini/
├── backend/ # Django backend services
│ ├── api_gateway/ # Main API entry point
│ ├── cms/ # Article CMS service
│ ├── rss_fetcher/ # RSS feed fetching service
│ └── workers/ # Celery worker tasks
├── frontend/ # React SPA
└── docker-compose.yml # Infrastructure services
- Python 3.9+
- Node.js 16+
- Docker & Docker Compose
- PostgreSQL (via Docker)
- Create virtual environment:
cd backend
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate- Install dependencies:
pip install -r requirements.txt- Set up environment variables:
cp .env.example .env
# Edit .env with your settings- Start infrastructure services:
docker-compose up -d- Run migrations:
python manage.py migrate- Create superuser:
python manage.py createsuperuser- Start Django development server:
python manage.py runserver- Start Celery worker (in separate terminal):
celery -A pavilion_gemini worker --loglevel=info- Start Celery beat (for scheduled tasks):
celery -A pavilion_gemini beat --loglevel=info- Install dependencies:
cd frontend
npm install- Start development server:
npm run dev- Backend API: http://localhost:8000
- Frontend: http://localhost:3000
- PostgreSQL: localhost:5432
- Redis: localhost:6379
- ✅ Article Management (CRUD)
- ✅ RSS Feed Integration with Scheduled Fetching
- ✅ Asynchronous Article Generation (Celery Workers)
- ✅ Admin/Editor Interface
- ✅ Article Status Workflow (Fetched → Draft → Published)
- ✅ SEO/OG Meta Data Management
- ✅ JWT Authentication
- ✅ Rich Text Editor (CKEditor 5)
- ✅ Responsive UI (Tailwind CSS)
See SETUP.md for detailed setup instructions.
TL;DR:
# Start infrastructure
docker-compose up -d
# Setup backend (one-time)
cd backend && bash setup.sh
# Start everything (from project root)
./start-dev.sh-
API Gateway (Django REST Framework)
- Authentication (JWT)
- Article CRUD operations
- API routing
-
CMS Service (
cmsapp)- Article model and management
- Status workflow
- SEO metadata
-
RSS Fetcher Service (
rss_fetcherapp)- Scheduled RSS feed fetching
- Automatic article creation
-
Article Generation Workers (
workersapp)- Celery tasks for async processing
- Content generation and enhancement
- React 18 with Hooks
- Redux Toolkit for state management
- React Router for navigation
- CKEditor 5 for rich text editing
- Tailwind CSS for styling