Bürgermeisterwahl Herzogenrath 2025: Kandidaten-Analyse-Portal

Fünf Kandidaten im Vergleich — datenbasiert, interaktiv, transparent

HTML/CSS Bootstrap 5 Chart.js Politik

🚀 Interesse an datengetriebenen Politik-Tools? Sprechen Sie mich an!

📞 02406 803 7603 ✉️ info@computerkumpel.de

💰 Was dieses Portal leistet

Zur Bürgermeisterwahl am 14. September 2025 traten in Herzogenrath fünf Kandidaten an. Dieses Portal analysierte ihre Profile, Stärken, Social-Media-Präsenz und visualisierte eine datenbasierte Wahlprognose mit Chart.js — ein Tool, das zeigt, wie politische Information modern und interaktiv aufbereitet werden kann.

👥
Kandidaten-Vergleich
Fünf Kandidaten von SPD, CDU, Volt, FDP und Linke mit detaillierten Profilen, Stärken-Schwächen-Analyse und Social-Media-Statistiken.
🔍
Interaktiver Filter
Wähler können per Button-Filter Kandidaten nach Partei sortieren — schneller Überblick ohne Scroll-Wüsten.
📊
Wahlprognose
Doughnut-Chart mit Chart.js visualisiert die prognostizierten Stimmenanteile — inklusive Erläuterungen zur Methodik.
🎨
Responsive Design
Bootstrap 5 + Custom CSS für optimale Darstellung auf Desktop, Tablet und Smartphone — inklusive Dark/Navbar.

💻 Code-Einblicke

Ein Blick unter die Haube — so ist das Kandidaten-Portal technisch umgesetzt:

📊 Interaktive Chart.js-Wahlprognose

Ein animierter Doughnut-Chart mit parteifarbigen Segmenten und Tooltip-Anzeige — initialisiert beim DOM-Ready:


function initPrognoseChart() {
    const ctx = document.getElementById('prognoseChart');
    if (!ctx) return;
    
    const chartData = {
        labels: ['Dr. B. Fadavian (SPD)', 'F. Birken (CDU)', 
                 'M. Verkooyen (Volt)', 'F. Müller (Linke)', 
                 'B. Bock (FDP)'],
        datasets: [{
            label: 'Prognostizierte Stimmenanteile (%)',
            data: [45, 28, 12, 8, 7],
            backgroundColor: [
                '#e3000f', // SPD Red
                '#000000', // CDU Black
                '#502379', // Volt Purple
                '#be3075', // Linke Purple
                '#ffed00'  // FDP Yellow
            ],
            borderWidth: 2,
            hoverOffset: 4
        }]
    };
    
    new Chart(ctx, {
        type: 'doughnut',
        data: chartData,
        options: {
            responsive: true,
            plugins: {
                legend: {
                    position: 'bottom',
                    labels: { padding: 20, usePointStyle: true }
                },
                tooltip: {
                    callbacks: {
                        label: ctx => ctx.label + ': ' + ctx.parsed + '%'
                    }
                }
            },
            animation: {
                animateRotate: true,
                duration: 2000
            }
        }
    });
}

🔍 Partei-Filter für Kandidaten

Klick auf einen Partei-Button filtert die Kandidaten-Ansicht — live, ohne Page-Reload:


function initCandidateFilter() {
    const filterButtons = document.querySelectorAll('.candidate-filter');
    const candidateCards = document.querySelectorAll('.candidate-card');
    
    filterButtons.forEach(button => {
        button.addEventListener('click', function() {
            const party = this.getAttribute('data-party');
            
            // Aktiven Button highlighten
            filterButtons.forEach(btn => btn.classList.remove('active'));
            this.classList.add('active');
            
            // Karten filtern mit Fade-Animation
            candidateCards.forEach(card => {
                if (party === 'all' || 
                    card.getAttribute('data-party') === party) {
                    card.style.display = 'block';
                } else {
                    card.style.display = 'none';
                }
            });
        });
    });
}

🖱️ Smooth-Scrolling & Scroll-Animations

Navigation-Links scrollen sanft zum Ziel, Observer-basierte Fade-In-Animationen beim Scrollen:


function initSmoothScrolling() {
    document.querySelectorAll('a[href^="#"]').forEach(link => {
        link.addEventListener('click', function(e) {
            e.preventDefault();
            const target = document.querySelector(this.getAttribute('href'));
            if (target) {
                window.scrollTo({
                    top: target.offsetTop - 80,
                    behavior: 'smooth'
                });
            }
        });
    });
}

function initAnimations() {
    const observer = new IntersectionObserver((entries) => {
        entries.forEach(entry => {
            if (entry.isIntersecting) {
                entry.target.classList.add('fade-in-up');
            }
        });
    }, { threshold: 0.1 });
    
    document.querySelectorAll('.card, .hero-section h1, .hero-section p')
        .forEach(el => observer.observe(el));
}

📱 Responsives Navbar-Layout mit Bootstrap

Das HTML-Grundgerüst mit sticky Navbar, Kandidaten-Hero und Bootstrap-Grid:


<nav class="navbar navbar-expand-lg navbar-dark sticky-top">
    <div class="container">
        <a class="navbar-brand" href="#">Marcel Verkooyen • Volt</a>
        <div class="collapse navbar-collapse" id="navbarNav">
            <ul class="navbar-nav ms-auto">
                <li><a class="nav-link" href="#marcel-program">Meine Ziele</a></li>
                <li><a class="nav-link" href="#candidates">Alle Kandidaten</a></li>
                <li><a class="nav-link" href="#prognose">Wahlprognose</a></li>
            </ul>
        </div>
    </div>
</nav>

⚙️ So funktioniert's

Vom Aufruf der Seite bis zur gefilterten Analyse.

🌐
1. Seite laden
HTML wird gerendert, Bootstrap 5 und Chart.js laden. script.js initialisiert alle Interaktionen.
🔍
2. Filtern & Navigieren
Nutzer klickt auf Partei-Buttons oder Nav-Links. JavaScript filtert DOM-Elemente in Echtzeit.
📊
3. Prognose analysieren
Doughnut-Chart animiert sich beim Scrollen in den Viewport. Tooltip zeigt Prozente pro Kandidat.

🔧 Technische Umsetzung

Reines Frontend-Projekt — kein Backend nötig. Statisches HTML mit Bootstrap 5, Chart.js und Custom JavaScript. Hosting auf jedem beliebigen Webserver möglich, kein Build-Step.

🛠️ Tech Stack

🏗️ HTML5
Semantische Struktur mit Section-Elementen, aria-Labels und SEO-optimierten Meta-Tags.
🎨 Bootstrap 5.3
Responsive Grid, Cards, Navbar, Buttons — alles mobile-first ohne eigenes CSS-Framework.
📊 Chart.js
Interaktive Doughnut-Charts mit Animationen, Tooltips und responsivem Resizing.
⚡ Vanilla JS
DOM-Manipulation, IntersectionObserver, Event-Handling — kein Framework-Overhead.
🎯 Custom CSS
Volt-Branding (#502379), Gradient-Hero, Hover-Effekte, Fade-In-Animationen.
🔤 Font Awesome
Icons für Kandidaten-Profile, Social-Media-Badges und UI-Elemente.

⚡ Ihr datengetriebenes Informationsportal — in wenigen Tagen.

📞 02406 803 7603 ✉️ info@computerkumpel.de

🚀 Gebaut mit Vibecoding — in Tagen statt Wochen

👴 Klassische Entwicklung
  • 📋 1–2 Wochen Konzept & Design
  • 🎨 1–2 Wochen UI-Entwicklung
  • 📊 1 Woche Chart-Integration
  • 🧪 1 Woche Testing & Mobile
  • ⏱️ Gesamt: 4–6 Wochen
🤖 Vibecoding-Ansatz
  • 🗣️ 0.5 Tage Prompt-Engineering
  • ⚡ 1–2 Tage iterative Generierung
  • 🔧 1 Tag Refinement & Styling
  • ✅ 0.5 Tage Testing & Go-Live
  • ⏱️ Gesamt: 3–4 Tage

🎯 Strategische Erkenntnisse aus diesem Projekt

Ein politisches Analyseportal lehrt mehr über Datenvisualisierung und User Engagement als die meisten Business-Tools.

📊
Datenvisualisierung schafft Vertrauen
Ein Chart sagt mehr als tausend Worte. Die Wahlprognose als Doughnut-Diagramm macht komplexe Daten sofort verständlich und verleiht der Analyse Glaubwürdigkeit. Wähler vertrauen visuellen Daten mehr als reinen Textbehauptungen.
🔍
Filter-Mechanismen = User-Empowerment
Der Partei-Filter gibt Nutzern das Gefühl von Kontrolle. Sie entscheiden, was sie sehen. Interaktivität verwandelt passive Leser in aktive Explorer — das erhöht Verweildauer und Vertrauen in die Plattform.
🎨
Branding durch Farbe
Volt-Lila (#502379) als durchgängiges Design-Element in Hero, Buttons und Chart schafft Wiedererkennung ohne aufdringliches Marketing. Subtiles Branding, das die Information in den Vordergrund stellt — nicht die Partei.
Static Sites: Underrated Power
Kein Backend, keine Datenbank, kein Build-Step — und trotzdem voll interaktiv. Statische HTML-Seiten mit cleverem JavaScript können 90% der Use Cases abdecken, für die oft unnötig komplexe Stacks aufgebaut werden.

Ihr eigenes Informationsportal — datenbasiert und interaktiv

Ob Wahlanalyse, Unternehmenskennzahlen oder Projektdaten — interaktive Visualisierung macht Informationen verständlich und überzeugend.

🔍
Analyse & Konzept
Wir besprechen Ihre Datenquellen und Ziele, identifizieren die beste Visualisierungsstrategie und skizzieren das Portal.
🧪
Prototyp
In 3–5 Tagen ein funktionierendes Portal mit Ihren Daten und Charts — live, interaktiv, responsiv.
🤝
Projektbegleitung
Vom Konzept über die Umsetzung bis zum Hosting und der Pflege — alles aus einer Hand.
📞 02406 803 7603 ✉️ info@computerkumpel.de