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
  • 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:

  1. First Login - Access the admin interface and change default credentials
  2. Environment Configuration - Customize your .env file for your needs
  3. Docker Management - Learn to start, stop, and manage services
  4. Admin Guide - Platform administration workflows

Common Installation Issues

If you encounter problems during setup, check our troubleshooting guides:

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

Explore all features →


Ready to get started? Choose your installation path above!