democracy-client

DEMOCRACY Client

A mobile application that brings the German Bundestag to citizens’ smartphones, allowing them to vote on parliamentary procedures and compare their choices with official results.

Features

Technology Stack

Getting Started

Prerequisites

Installation

  1. Clone the repository:

    git clone https://github.com/democracy-deutschland/democracy-client.git
    cd democracy-client
    
  2. Install dependencies:

    pnpm install
    
  3. Generate GraphQL types:

    pnpm codegen
    
  4. Start the development server:

    pnpm start
    
  5. Run on specific platforms:

    pnpm ios     # Run on iOS simulator
    pnpm android # Run on Android emulator
    

Development

Testing

The project uses Maestro for end-to-end testing. See Testing Documentation for more information.

Run tests with:

pnpm test:e2e          # Run all E2E tests
pnpm test:e2e:smoke    # Run smoke tests only
pnpm test:e2e:verification  # Run verification flow tests only

Deployment

This project uses fastlane for both iOS and Android deployments.

Project Structure

Architecture

For a detailed explanation of the application architecture, see Architecture Documentation.

License

Apache License 2.0

Contact

democracy-deutschland.de contact@democracy-deutschland.de