4.7 KiB
Getting Started with Changemaker Lite V2
Welcome to Changemaker Lite V2! This guide will help you get up and running quickly with your self-hosted political campaign platform.
What is Changemaker Lite V2?
Changemaker Lite V2 is a complete rebuild of the platform with a modern TypeScript stack, offering:
- Email Advocacy Campaigns: Target elected representatives with automated email campaigns
- Geographic Mapping: Manage locations, cuts (territories), and canvassing operations
- Volunteer Management: Schedule shifts, track canvassing visits with GPS
- Landing Page Builder: Create public-facing pages with GrapesJS editor
- Newsletter Integration: Sync with Listmonk for email marketing
- Media Library: Manage video content with public gallery
- Comprehensive Monitoring: Prometheus + Grafana observability stack
Prerequisites
Before you begin, ensure you have:
- Linux server or macOS with Docker installed
- Docker 20.10+ and Docker Compose 2.0+
- 4GB RAM minimum (8GB recommended for monitoring stack)
- 20GB disk space (more for media uploads)
- Root or sudo access
- Basic command line familiarity
Optional but Recommended
- Domain name with DNS control (for production deployment)
- SMTP server for email sending (or use MailHog for testing)
- S3-compatible storage for backups (Backblaze B2, AWS S3, etc.)
Quick Start Options
Choose your path based on your needs:
Option 1: Quick Start (5 Minutes)
Get the platform running locally for evaluation and testing.
→ Quick Start Guide{ .md-button .md-button--primary }
Option 2: Full Installation (30 Minutes)
Set up for production with custom configuration, monitoring, and backups.
→ Full Installation Guide{ .md-button }
Option 3: Local Development (45 Minutes)
Set up a complete development environment with hot reload and debugging.
→ Development Setup{ .md-button }
Architecture Overview
Changemaker Lite V2 uses a microservices architecture:
graph LR
User[User Browser] --> Nginx[Nginx<br/>Reverse Proxy]
Nginx --> Admin[Admin GUI<br/>React]
Nginx --> ExpressAPI[Express API<br/>Main Features]
Nginx --> FastifyAPI[Fastify API<br/>Media Library]
ExpressAPI --> DB[(PostgreSQL)]
FastifyAPI --> DB
ExpressAPI --> Redis[(Redis)]
FastifyAPI --> Redis
Key Components:
- Nginx: Routes requests to appropriate services based on subdomain
- Admin GUI: React application (Vite + Ant Design) for platform management
- Express API: Main backend with 14 feature modules (Prisma ORM)
- Fastify API: Media library microservice (Drizzle ORM)
- PostgreSQL: Primary database (Prisma + Drizzle schemas)
- Redis: Caching, rate limiting, job queue backend
Learn more about the architecture →
What's Next?
After installation, you'll want to:
- First Login - Access the admin interface and change default credentials
- Environment Configuration - Customize your .env file for your needs
- Docker Management - Learn to start, stop, and manage services
- Admin Guide - Platform administration workflows
Common Installation Issues
If you encounter problems during setup, check our troubleshooting guides:
- Docker Issues - Port conflicts, volume permissions
- Database Issues - Connection errors, migrations
- Common Errors - General troubleshooting
Getting Help
- Documentation Search: Use the search bar above to find specific topics
- FAQ: Check the Frequently Asked Questions
- Issue Tracker: Report bugs or request features on GitHub
Feature Highlights
Influence Module
Run sophisticated email advocacy campaigns with:
- Multi-target campaigns (MPs, MPPs, councillors)
- Public response walls with moderation
- Email queue with retry logic
- Tracking and analytics
Map Module
Coordinate field operations with:
- Multi-provider geocoding (6 services)
- Territory management (cuts)
- GPS-tracked canvassing
- Printable walk sheets with QR codes
Landing Pages
Build custom public pages with:
- GrapesJS drag-and-drop editor
- MkDocs export for static sites
- Mobile-responsive templates
Monitoring
Keep your platform healthy with:
- Real-time metrics dashboards
- Custom alerts
- Service health monitoring
- Data quality tracking
Ready to get started? Choose your installation path above!