npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

riksdagsmonitor

v0.8.9

Published

Swedish Parliament Intelligence Platform - Monitor political activity with systematic transparency

Readme

🗳️ Riksdagsmonitor

Swedish Parliament Intelligence Platform - Monitor political activity with systematic transparency

🎯 Mission

Riksdagsmonitor is a comprehensive intelligence platform for monitoring political activity in Sweden's Riksdag (Parliament). Built on the Citizen Intelligence Agency (CIA) platform, we provide systematic transparency through real-time analysis and 50+ years of historical data.

OpenSSF Scorecard Quality Checks Dependency Review OpenSSF Best Practices License ISMS Ask DeepWiki

📊 Quality Metrics

CI/CD & Security

OpenSSF Scorecard Quality Checks Dependency Review CodeQL

Testing

JavaScript Testing JSDoc Validation Translation Validation

Documentation & Release

Release API Docs Test Coverage E2E Reports

Compliance & Standards

License ISMS ISO 27001 NIST CSF CIS Controls Ask DeepWiki

Security Policy: Per Secure Development Policy, we maintain defense-in-depth architecture with comprehensive security controls and documentation. See WORKFLOWS.md for complete CI/CD pipeline documentation and SECURITY_ARCHITECTURE.md for security controls.

📊 Project Classification

Riksdagsmonitor follows Hack23 AB's comprehensive Classification Framework for security, business continuity, and impact analysis:

🎯 Project Classification

Project Type Process Type

🔒 Security Classification (CIA Triad)

Confidentiality Integrity Availability

Confidentiality: Public - All information intentionally disclosed (Swedish Riksdag open data, website content)
Integrity: High - Automated validation, digital signatures (Git commits), accurate political data required
Availability: High - 99.998% design availability target (underpinned by AWS CloudFront 99.9% SLA), automated failover (AWS multi-region, GitHub Pages DR)

🏷️ Privacy Classification

Privacy

Personal Data (Public Officials): This project processes personal data about public officials (e.g., names, roles, voting records, person identifiers) sourced from Swedish Riksdag open data and the Citizen Intelligence Agency (CIA) datasets. Data relates only to MPs and other public figures acting in their official capacity; no special-category data or data about private individuals is processed. GDPR applies, with processing based on public-interest and legitimate-interest grounds for transparency and democratic accountability.

⏱️ Business Continuity Classification

RTO RPO

RTO (Recovery Time Objective): 1-4 hours - Automated multi-region failover (AWS CloudFront + S3 us-east-1 primary, eu-west-1 replica, GitHub Pages DR)
RPO (Recovery Point Objective): 4-24 hours - Daily data pipeline updates, Git version control, S3 versioning

💰 Business Impact Analysis

| Impact Category | Level | Description | |-----------------|-------|-------------| | Financial | Low | Minimal financial impact (<$500 daily) - Open-source project, no revenue dependency | | Operational | Moderate | Partial service impact - Swedish political transparency temporarily unavailable | | Reputational | Moderate | Industry attention - Transparency advocates may notice outage | | Regulatory | Low | No regulatory impact - Public information dissemination only |

📋 Data Classification Levels

For operational data handling, we use a simplified 4-level scheme:

| Classification | Description | Examples | Handling Requirements | |----------------|-------------|----------|----------------------| | 🟢 Public | Information intended for public disclosure | Website content, Swedish Riksdag open data, documentation | No restrictions, published on GitHub Pages | | 🟡 Internal | Information for internal use only | GitHub Actions secrets, deployment credentials | GitHub organization access only, MFA required | | 🟠 Confidential | Sensitive business information | Not applicable to this project | N/A | | 🔴 Restricted | Highly sensitive information | Not applicable to this project | N/A |

📦 Data Inventory

Public Data (🟢):

  • All website HTML/CSS content (14 languages)
  • Swedish Parliament data (MPs, votes, documents, committees)
  • Election results and statistics
  • Government budget and spending data
  • All source code and documentation

Internal Data (🟡):

  • GitHub Actions secrets (tokens if used; no long-lived PATs)
  • AWS IAM credentials (ephemeral via OIDC)
  • Deployment pipeline configurations

No User or Confidential Data:

  • ❌ No user accounts or authentication
  • ❌ No non-public or end-user personally identifiable information (PII)
  • ✅ Only public-figure data from official Swedish Parliament records (MP names, roles, votes)
  • ❌ No financial transactions or payment data
  • ❌ No confidential government information

🔐 Data Handling Controls

Public Data:

  • Published via GitHub Pages and AWS CloudFront
  • TLS 1.3 encryption in transit
  • No access controls required (intentionally public)
  • Version controlled via Git

Internal Data:

  • Stored in GitHub Secrets (encrypted at rest)
  • AWS credentials via OIDC (no long-lived keys)
  • Accessed only via secure GitHub Actions workflows
  • Least privilege principle enforced
  • Regular rotation and audit

📋 Compliance Alignment

  • ISO 27001:2022 A.8 - Asset Management
  • NIST CSF 2.0 PR.DS - Data Security
  • CIS Controls v8.1 Control 3 - Data Protection
  • GDPR - Applicable for public-official data processing (public interest and legitimate interest grounds)
  • Hack23 Classification Framework - Full framework documentation

See SECURITY_ARCHITECTURE.md for detailed security controls.

✨ Features

  • 349 Current MPs - Individual MP tracking and performance metrics
  • 2,494 Historical Politicians - Complete database from 1971-2024 (50+ years)
  • 8 Political Parties - Party performance, coalition dynamics, voting patterns
  • 45 Risk Rules - Systematic transparency through behavioral analysis
  • 3.5+ Million Votes - Comprehensive voting record analysis
  • 109,000+ Documents - Parliamentary documents processed and analyzed

🌐 Live Platform

Website: riksdagsmonitor.com

Available in 14 Languages:

  • English, Swedish, Danish, Norwegian, Finnish
  • German, French, Spanish, Dutch
  • Arabic, Hebrew, Japanese, Korean, Chinese

📊 CIA Data Products Integration

Riksdagsmonitor integrates with the CIA platform through automated data pipelines, schema validation, and daily statistics updates.

Production Database Statistics

Live Statistics (Updated Daily at 03:00 CET):

  • 2,494 Politicians - Complete historical database (1971-2024)
  • 349 Current MPs - Active Members of Parliament
  • 3.5+ Million Votes - Comprehensive voting records
  • 109,000+ Documents - Parliamentary documents processed
  • 8,740 Committee Documents - Committee work tracked
  • 2,308 Rule Violations - Transparency issues identified

Data Source: extraction_summary_report.csv
Update Schedule: Daily automated fetch via GitHub Actions
Last Extraction: See cia-data/production-stats.jsonmetadata.last_updated (updated daily)

Implementation:

  • scripts/load-cia-stats.js - Fetches and parses production statistics
  • scripts/update-stats-from-cia.js - Updates website files
  • .github/workflows/update-cia-stats.yml - Automated daily workflow
  • cia-data/production-stats.json - Cached statistics (24-hour freshness)

Schema Integration

  • Automated Validation - All CIA exports validated against JSON schemas
  • Type Safety - TypeScript type definitions for development
  • CI/CD Integration - Daily validation checks in GitHub Actions
  • Update Detection - Weekly checks for schema updates

See CIA Schema Integration Documentation for details.

Data Products

Riksdagsmonitor leverages 19 comprehensive visualization products from the CIA platform:

Intelligence Dashboards

  • Overview Dashboard - Complete Riksdag intelligence snapshot
  • Party Performance - Longitudinal party analysis and effectiveness metrics
  • Government Cabinet - Ministry-level performance scorecards
  • Election Cycle Analysis - Historical patterns and trend forecasting

Top 10 Rankings

  • Most Influential MPs (network analysis)
  • Most Productive MPs (legislative output)
  • Most Controversial MPs (voting patterns)
  • Most Absent MPs (attendance tracking)
  • Party Rebels (cross-party voting)
  • Coalition Brokers (collaboration patterns)
  • Rising Stars (emerging political figures)
  • Electoral Risk (MPs at risk)
  • Ethics Concerns (transparency issues)
  • Media Presence (public visibility)

Advanced Analytics

  • Committee Network Analysis - Influence mapping and assignments
  • Politician Career Analysis - Career trajectories and milestones
  • Party Longitudinal Analysis - 50+ years of party evolution

📈 Implemented Dashboards

Riksdagsmonitor currently features 4 interactive intelligence dashboards built with Chart.js and D3.js:

1. 🌡️ Seasonal Activity Patterns Dashboard

  • Coverage: 2002-2025 (quarterly data, 23+ years)
  • Visualizations: Heat maps, time series, Z-score analysis
  • Purpose: Track quarterly parliamentary activity patterns and detect seasonal trends
  • Data Source: cia-data/seasonal/view_riksdagen_seasonal_activity_patterns_sample.csv

2. 👤 Politician Dashboard

  • Coverage: 349 MPs with comprehensive risk and performance metrics
  • Visualizations: Top 10 rankings, risk profiles, influence metrics
  • Purpose: Individual MP tracking and transparency assessment
  • Data Source: cia-data/politician/*.csv

3. 🗳️ Pre-Election Monitoring Dashboard

  • Coverage: Q4 2023-2025 (12-15 months before 2026 election)
  • Visualizations: Historical comparisons, election-year patterns
  • Purpose: Track pre-election parliamentary activity and behavior changes
  • Data Source: cia-data/pre-election/*.csv

4. 🗳️ Party Performance & Effectiveness Dashboard

Coverage: 1990-2026 (37 years)
Analysis: Comprehensive party analytics across 8 Swedish political parties

Key Features:

  • Effectiveness Trends: Historical legislative productivity and voting consistency
  • Comparative Analysis: Party-by-party benchmarking
  • Coalition Patterns: Party alignment visualization
  • Momentum Indicators: Electoral trajectory with percentile benchmarks

5. 🚨 Anomaly Detection & Early Warning System

  • Coverage: 2002-2026 (41 quarters analyzed)
  • Visualizations: 6 interactive charts including timeline, Z-score distribution, heat map
  • Features:
    • Real-time alert system for critical anomalies
    • Statistical Z-score analysis (|Z| ≥ 2.0 for anomalies)
    • Severity classification: CRITICAL (≥2.5), HIGH (≥2.0), MODERATE (≥1.5), LOW (<1.5)
    • Anomaly types: Ballot, Document, Attendance
    • Direction indicators: UNUSUALLY_HIGH, UNUSUALLY_LOW
  • Data Source: cia-data/seasonal/view_riksdagen_seasonal_anomaly_detection_sample.csv

Dashboard Features:

  • Local-first data loading (1-hour caching)
  • WCAG 2.1 AA accessible
  • 14-language support
  • Responsive design (320px-1440px+)
  • CSP-compliant (SRI hashes on all CDN resources)

🔗 Data Sources

Riksdagsmonitor integrates multiple authoritative Swedish open data sources:

🏗️ Technical Architecture

Stack

  • Frontend: Static HTML/CSS with JavaScript dashboards
  • Build System: Vite 7 (ES modules, code splitting)
  • Visualization: Chart.js 4 + D3.js 7 hosted locally on CloudFront
  • Testing: Vitest (unit), Cypress (E2E) - 2890 tests passing
  • Styling: Custom CSS with cyberpunk theme, responsive design
  • Hosting: GitHub Pages with CloudFront CDN
  • CI/CD: GitHub Actions for automated testing and deployment
  • Data Platform: CIA OSINT platform (Java/Spring Boot backend)
  • Runtime: Node.js 25.x

JavaScript Architecture

  • 8 Dashboard Modules:

    • party-dashboard.js (effectiveness analytics)
    • anomaly-detection-dashboard.js (statistical outliers)
    • seasonal-patterns-dashboard.js (temporal trends)
    • pre-election-dashboard.js (election monitoring)
    • politician-dashboard.js (MP tracking)
    • ministry-dashboard.js (cabinet analysis)
    • election-cycle-dashboard.js (cycle patterns)
    • back-to-top.js (navigation)
  • Data Loading: Local-first with GitHub fallback

  • Caching: LocalStorage with freshness checks (1-7 days)

  • Performance: Code splitting, lazy loading, asset optimization

  • Security: SRI hashes (sha384), CSP-compliant script loading

Security

  • HTTPS-Only: TLS 1.3 encryption enforced
  • Security Headers: CSP, HSTS, X-Frame-Options, X-Content-Type-Options
  • Access Control: GitHub MFA, SSH keys, GPG commit signing
  • Monitoring: Dependabot, CodeQL, Secret Scanning
  • Documentation: SECURITY_ARCHITECTURE.md, THREAT_MODEL.md

🔐 Commitment to Transparency and Security

At Hack23 AB, we believe that true security comes through transparency and demonstrable practices. Our Information Security Management System (ISMS) is publicly available, showcasing our commitment to security excellence and organizational transparency.

Compliance Frameworks

  • ISO 27001:2022 - Information security management controls (7 controls implemented)
  • NIST CSF 2.0 - Cybersecurity framework (6 functions aligned)
  • CIS Controls v8.1 - Security best practices (6 controls implemented)

Security Metrics

| Metric | Status | Details | |--------|--------|---------| | Risk Level | 🟢 LOW | 5.52/10.0 (99.7% risk reduction) | | HTML Validation | ✅ PASSED | 0 errors (HTMLHint) | | Dependencies | ✅ CLEAN | Dependabot monitoring | | Secrets | ✅ SECURE | Secret scanning enabled | | Code Scanning | ✅ ACTIVE | CodeQL analysis |

🚀 Development

Prerequisites

  • Node.js: 25.x or higher
  • npm: 10.x or higher (comes with Node.js)
  • Git with GPG signing configured
  • GitHub account with MFA enabled
  • SSH keys for GitHub authentication

Local Development

# Clone repository
git clone [email protected]:Hack23/riksdagsmonitor.git
cd riksdagsmonitor

# Install dependencies
npm install

# Development server with Vite (hot reload)
npm run dev
# Opens http://localhost:8080

# OR serve statically
python3 -m http.server 8080
# or
npx http-server -p 8080

# Open in browser
open http://localhost:8080

Testing

# Install dependencies (if not already done)
npm install

# Run unit tests (Vitest)
npm test

# Run tests in watch mode
npm run test:watch

# Run tests with coverage
npm run test:coverage

# Run tests with UI
npm run test:ui

# Run E2E tests (Cypress)
npm run cypress:open    # Interactive GUI
npm run cypress:run     # Headless

# Full E2E test suite
npm run e2e            # Builds, previews, and runs Cypress

Building for Production

# Build with Vite
npm run build

# Preview production build
npm run preview
# Opens http://localhost:4173

# Build output in dist/
ls dist/

Quality Checks

# HTML validation
npm run htmlhint

# Link checking
python3 -m http.server 8080 &
npm run linkcheck

# Run all quality checks
npm run htmlhint && npm test && npm run build

CI/CD Pipeline

Automated Checks:

  • HTML validation (HTMLHint)
  • Link checking (linkinator)
  • JavaScript testing (Vitest unit tests - 2890 tests)
  • E2E testing (Cypress)
  • Build validation (Vite)
  • Dependency review (Dependabot)
  • Security scanning (CodeQL, Secret Scanning)

Workflows:

  • .github/workflows/quality-checks.yml - HTML/link validation
  • .github/workflows/javascript-testing.yml - Vite build, Vitest, Cypress E2E
  • .github/workflows/dependency-review.yml - Dependency security
  • .github/workflows/copilot-setup-steps.yml - Copilot agent setup
  • .github/workflows/release.yml - Release with attestations and documentation-as-code

Test Results:

  • ✅ 2890/2890 unit tests passing (Vitest)
  • ✅ 100% test pass rate
  • ✅ Coverage: 70% lines, 70% functions, 60% branches

🚀 Release Process

Riksdagsmonitor follows a comprehensive release process with full supply chain security:

Release Workflow

  • Trigger: Manual (workflow_dispatch) or tag push (v*..)
  • Duration: ~20-30 minutes
  • Jobs: Prepare → Build → Release

Release Artifacts

Each release includes:

  • ✅ Production build (riksdagsmonitor-vX.Y.Z.zip)
  • ✅ SHA-256 checksum for verification
  • ✅ SBOM in SPDX format (Software Bill of Materials)
  • ✅ SLSA Build Provenance attestations (signed)

Documentation as Code

Every release automatically generates and publishes:

  • 📚 API Documentation (JSDoc)
  • 📊 Test Coverage Report (Vitest)
  • 🧪 E2E Test Reports (Cypress)
  • 📦 Dependency Tree (npm)

Documentation Hub: riksdagsmonitor.com/docs/

Dual Deployment

  • Primary: AWS S3/CloudFront (https://riksdagsmonitor.com)
  • Backup: GitHub Pages (disaster recovery)

Security & Verification

Verify attestations using GitHub CLI:

gh attestation verify riksdagsmonitor-v1.0.0.zip -R Hack23/riksdagsmonitor

Full Release Guide: See RELEASE_PROCESS.md

📖 Documentation

Project Documentation

Architecture Documentation Portfolio

| Current State | Future State | |--------------|-------------| | 🏗️ Architecture | 🚀 Future Architecture | | 📊 Data Model | 📊 Future Data Model | | 🔄 Flowcharts | 🔄 Future Flowcharts | | 🔄 State Diagrams | 🔄 Future State Diagrams | | 🗺️ Mindmap | 🗺️ Future Mindmap | | 💼 SWOT | 💼 Future SWOT |

Security Documentation

ISMS Policy Alignment

GitHub Copilot Integration

Available Agents (14):

  • security-architect - Security architecture and ISMS compliance
  • documentation-architect - C4 models and technical documentation
  • quality-engineer - HTML/CSS validation and accessibility
  • frontend-specialist - Static site development and responsive design
  • isms-compliance-manager - ISO 27001/NIST CSF/CIS Controls compliance
  • deployment-specialist - GitHub Actions and CI/CD automation
  • intelligence-operative - Political intelligence analysis, OSINT, Swedish politics expertise, riksdag-regering-mcp (32 tools)
  • task-agent - Product excellence, quality assurance, Playwright testing, issue management
  • ui-enhancement-specialist - Static HTML/CSS, responsive design, 14-language support, WCAG 2.1 AA
  • data-pipeline-specialist - CIA data consumption, ETL workflows, caching strategies, data validation
  • data-visualization-specialist - Chart.js/D3.js, interactive dashboards, CIA intelligence visualizations
  • content-generator - Automated news generation, intelligence reports, multi-language content
  • devops-engineer - CI/CD pipelines, GitHub Actions security, infrastructure automation, monitoring
  • news-journalist - Political journalism, editorial standards, multi-language news coverage

Available Skills (87):

Core Infrastructure (7):

  • hack23-isms-compliance - ISMS framework requirements
  • security-by-design - Security best practices
  • static-site-security - Static website security
  • ci-cd-security - GitHub Actions security hardening
  • documentation-standards - Documentation guidelines
  • html-accessibility - WCAG 2.1 AA compliance
  • multi-language-localization - Internationalization best practices

Political Intelligence (11):

  • political-science-analysis - Comparative politics and policy analysis frameworks
  • osint-methodologies - Open-source intelligence collection and verification
  • intelligence-analysis-techniques - Structured analytic techniques (ACH, SWOT)
  • swedish-political-system - Riksdag structure, 8 parties, electoral system
  • electoral-analysis - Election forecasting and coalition prediction
  • behavioral-analysis - Political psychology and leadership analysis
  • strategic-communication-analysis - Narrative analysis and media monitoring
  • legislative-monitoring - Voting patterns and parliamentary oversight
  • risk-assessment-frameworks - Political risk and corruption indicators
  • data-science-for-intelligence - Statistical analysis and visualization
  • gdpr-compliance - GDPR compliance for political data processing

ISMS & Security (6):

  • cis-controls - CIS Controls v8.1 for static sites
  • iso-27001-controls - ISO 27001:2022 Annex A controls
  • nist-csf-mapping - NIST CSF 2.0 framework mapping
  • threat-modeling - STRIDE threat analysis
  • secure-code-review - HTML/CSS/JS security review
  • security-documentation - ISMS documentation standards

Development & Operations (11): ⬆️ EXPANDED

  • c4-architecture-documentation - C4 model and Mermaid diagrams
  • github-actions-workflows - CI/CD patterns and security
  • code-quality-checks - HTMLHint, CSSLint, linkinator, axe-core
  • secrets-management - GitHub secrets and PAT management
  • data-pipeline-engineeringNEW - ETL workflows, automated data fetching
  • automated-content-generationNEW - News generation, intelligence reports
  • performance-optimizationNEW - Core Web Vitals, bundle size, caching
  • api-integrationNEW - REST/GraphQL clients, rate limiting
  • github-agentic-workflowsNEW - AI-powered repository automation, MCP tools, safe outputs

UI/UX & Design (4): ⬆️ EXPANDED

  • responsive-design - Mobile-first, CSS Grid/Flexbox, breakpoints (320px-1440px+)
  • design-system-management - Cyberpunk theme, CSS variables, component library
  • political-data-visualization - CSS-only charts, heat maps, dashboards
  • advanced-data-visualizationNEW - Chart.js/D3.js, interactive dashboards

Testing & Quality Assurance (2):NEW

  • playwright-testing - Browser automation, visual regression, accessibility audits
  • issue-management - GitHub issue creation, labeling, agent assignment

Data Integration (2): ⬆️ EXPANDED

  • riksdag-regering-mcp - 32 political data tools (Parliament, Government, MPs, votes)
  • cia-data-integrationNEW - CIA export consumption, validation, caching strategies

External Documentation

🤖 AI-Disrupted News Generation

"While traditional newsrooms debate whether AI will replace journalists, Riksdagsmonitor already runs a fully autonomous political intelligence newsroom — 10 agentic workflows, 14 languages, zero human editors, and a publication schedule that would bankrupt any legacy outlet trying to keep up."

Riksdagsmonitor's agentic news generation pipeline is the world's first fully AI-driven political intelligence newsroom for parliamentary monitoring. Powered by Claude Opus (currently 4.6) via GitHub Copilot Coding Agent, our 10 specialized workflows (9 scheduled + 1 on-demand) autonomously produce deep political analysis — not shallow summaries, but structured intelligence products with source verification, multi-party balance, and GDPR-compliant OSINT methodology.

📰 Autonomous Publication Schedule

Every day, the platform's AI operatives awaken on cron schedules, query the Swedish Parliament's open data via 32 MCP tools, cross-reference government sources, and generate publication-ready intelligence articles in 14 languages — including RTL support for Arabic and Hebrew.

| Time (UTC) | Workflow | Coverage | Frequency | |:-----------:|:---------|:---------|:----------| | 🌅 04:00 | Committee Reports | Utskottsbetänkanden analysis, voting breakdowns | Mon–Fri | | 🌅 05:00 | Propositions | Government bills, legislative impact assessment | Mon–Fri | | ☀️ 06:00 | Motions | Opposition proposals, party strategy decoding | Mon–Fri | | ☀️ 07:00 | Week Ahead | Parliamentary calendar preview, agenda intelligence | Friday | | ☀️ 08:00 | Month Ahead | Strategic outlook, coalition forecasting | 1st of month | | 🔍 10:00 & 14:00 (Mon–Fri); 12:00 (Sat/Sun) | Realtime Monitor | Breaking political developments, flash analysis | Mon–Fri (×2) + weekends | | 🌆 18:00 (16:00 Sat) | Evening Analysis | Deep-dive intelligence synthesis | Mon–Sat | | 📊 09:00 | Weekly Review | Week-in-review scorecard, party performance | Saturday | | 📈 10:00 | Monthly Review | Comprehensive monthly intelligence assessment | 28th of month | | 🔧 Manual | Article Generator | On-demand article generation | On-demand |

All times are UTC (GitHub Actions cron). For local time, convert to CET/CEST. Authoritative schedules defined in .github/workflows/news-*.lock.yml workflows.

Result: Dozens of articles per week across 14 languages — delivering hundreds of localized intelligence products each month, generated autonomously with zero editorial intervention.

🧠 Why This Is Different

Traditional AI-generated news is shallow — it rewrites press releases. Riksdagsmonitor's agentic pipeline performs deep political intelligence analysis:

  • 🔎 Source verification: Every claim traced to official Riksdag/Regering data via MCP
  • ⚖️ Multi-party balance: Algorithmic fairness across all 8 parliamentary parties
  • 📊 Quantitative rigor: Voting cohesion metrics, attendance scoring, legislative productivity indices
  • 🌐 14-language reach: Native-quality political analysis — not machine translation, but culturally adapted intelligence
  • 🛡️ GDPR-compliant OSINT: Only public parliamentary data, with privacy-by-design architecture
  • 🧪 Quality gates: HTMLHint validation, link checking, accessibility compliance (WCAG 2.1 AA) — every article passes CI before publication

🔮 Future Roadmap: 2026–2037

From agentic news generation to AGI-powered democratic intelligence — the 11-year evolution of Riksdagsmonitor.

📋 Detailed planning: Future Workflows · Future Mindmap

Evolution Overview

%%{init: {'theme': 'dark', 'themeVariables': {'primaryColor': '#00d9ff', 'primaryTextColor': '#e0e0e0', 'primaryBorderColor': '#ff006e', 'lineColor': '#ffbe0b', 'secondaryColor': '#1a1e3d', 'tertiaryColor': '#0a0e27', 'background': '#0a0e27'}}}%%
timeline
    title Riksdagsmonitor Evolution — 2026 to 2037
    section Phase 3 — Foundation (2026)
        Q1-Q2 : TypeScript migration ✅
               : 10 agentic news workflows ✅
               : 34 GitHub Actions workflows + 10 agent prompt files
               : Dual deployment (S3 + GitHub Pages)
        Q3-Q4 : CIA data pipeline integration
               : Predictive dashboards
               : 14-language expansion
               : 40 GitHub Actions workflows + 10 agent prompt files
    section Phase 4 — Intelligence (2027-2029)
        2027 : Real-time data streams
             : ML prediction models
             : Multi-source OSINT
             : Nordic parliament expansion
        2028 : Multi-modal content (audio/video)
             : Self-healing pipelines
             : AI editorial board
             : 65 automation assets
        2029 : Fully autonomous pipeline
             : Expert-level analysis
             : API platform launch
             : 75 automation assets
    section Phase 5 — Scale (2030-2033)
        2030-2031 : EU-wide coverage
                  : 85+ automation assets
                  : Near-expert analysis
                  : Sovereign AI evaluation
        2032-2033 : Global parliamentary monitoring
                  : 100 automation assets
                  : Pre-AGI capabilities
                  : Every UN language
    section Phase 6 — AGI Era (2034-2037)
        2034-2035 : AGI-enhanced intelligence
                  : 195 parliaments monitored
                  : Predictive governance
                  : 110+ automation assets
        2036-2037 : Transformative democracy platform
                  : 120+ automation assets
                  : Post-AGI capabilities
                  : Democratic safeguards architecture

Phase 3: Agentic Intelligence Foundation (2026)

Current phase — AI-disrupted news generation operational

%%{init: {'theme': 'dark', 'themeVariables': {'primaryColor': '#00d9ff', 'primaryTextColor': '#e0e0e0', 'primaryBorderColor': '#ff006e', 'lineColor': '#ffbe0b', 'secondaryColor': '#1a1e3d', 'tertiaryColor': '#0a0e27'}}}%%
graph LR
    subgraph SGCompleted["✅ Completed"]
        style SGCompleted fill:#006400,stroke:#00d9ff,color:#e0e0e0
        A[TypeScript Migration<br/>31 modules] --> B[Agentic News Gen<br/>10 workflows]
        B --> C[14 Languages<br/>RTL support]
        C --> D[Dual Deploy<br/>S3 + GitHub Pages]
    end
    subgraph SGProgress["🔄 In Progress"]
        style SGProgress fill:#1a1e3d,stroke:#ffbe0b,color:#e0e0e0
        E[CIA Data Pipeline<br/>19 products] --> F[Predictive Dashboards<br/>Chart.js/D3.js]
        F --> G[Content Expansion<br/>Hundreds of articles/month]
    end
    subgraph SGPlanned["📋 Planned"]
        style SGPlanned fill:#0a0e27,stroke:#ff006e,color:#e0e0e0
        H[API Platform<br/>GraphQL] --> I[Nordic Expansion<br/>Denmark, Norway, Finland]
    end
    D --> E
    G --> H

| Capability | Status | Details | |:-----------|:------:|:--------| | TypeScript migration | ✅ Done | 31 modules, 2890 Vitest tests | | Agentic news generation | ✅ Live | 10 workflows (9 scheduled + 1 on-demand), 14 languages | | 14-language support | ✅ Live | Including Arabic/Hebrew RTL | | CIA data integration | 🔄 Active | 19 visualization products | | Predictive dashboards | 📋 Planned | Chart.js/D3.js interactive displays |

Phase 4: Predictive Intelligence & Nordic Expansion (2027–2029)

%%{init: {'theme': 'dark', 'themeVariables': {'primaryColor': '#00d9ff', 'primaryTextColor': '#e0e0e0', 'primaryBorderColor': '#ff006e', 'lineColor': '#ffbe0b', 'secondaryColor': '#1a1e3d', 'tertiaryColor': '#0a0e27'}}}%%
graph TB
    subgraph SG2027["2027 — Predictive Analytics"]
        style SG2027 fill:#1a1e3d,stroke:#00d9ff,color:#e0e0e0
        PA1[🔮 ML Election Models<br/>Coalition probability scoring]
        PA2[📡 Real-Time Streams<br/>Live parliamentary feeds]
        PA3[🌍 Nordic Expansion<br/>DK · NO · FI parliaments]
        PA4[🔍 Multi-Source OSINT<br/>Media + social + official]
    end
    subgraph SG2028["2028 — Multi-Modal Intelligence"]
        style SG2028 fill:#1a1e3d,stroke:#ffbe0b,color:#e0e0e0
        MM1[🎙️ Audio/Video Analysis<br/>Debate tone detection]
        MM2[🤖 AI Editorial Board<br/>Autonomous quality control]
        MM3[🔧 Self-Healing Pipelines<br/>Auto-recovery workflows]
        MM4[📊 65 Automation Assets]
    end
    subgraph SG2029["2029 — Autonomous Platform"]
        style SG2029 fill:#1a1e3d,stroke:#ff006e,color:#e0e0e0
        AP1[🚀 Fully Autonomous Pipeline<br/>Zero human intervention]
        AP2[🧠 Expert-Level Analysis<br/>PhD-equivalent insight]
        AP3[🔌 API Platform Launch<br/>GraphQL + REST]
        AP4[📊 75 Automation Assets]
    end
    PA1 --> MM1
    PA2 --> MM2
    PA3 --> MM3
    PA4 --> MM4
    MM1 --> AP1
    MM2 --> AP2
    MM3 --> AP3
    MM4 --> AP4

Phase 5: EU-Wide Coverage & Pre-AGI (2030–2033)

%%{init: {'theme': 'dark', 'themeVariables': {'primaryColor': '#00d9ff', 'primaryTextColor': '#e0e0e0', 'primaryBorderColor': '#ff006e', 'lineColor': '#ffbe0b', 'secondaryColor': '#1a1e3d', 'tertiaryColor': '#0a0e27'}}}%%
graph LR
    subgraph SGEU["2030-2031 — EU Scale"]
        style SGEU fill:#1a1e3d,stroke:#00d9ff,color:#e0e0e0
        EU1[🇪🇺 27 EU Parliaments<br/>+ European Parliament]
        EU2[🧠 Near-Expert Analysis<br/>Opus 8.x capabilities]
        EU3[📊 85+ Automation Assets<br/>Continent-wide coverage]
        EU4[🏛️ Sovereign AI Evaluation<br/>EU AI Act compliance]
    end
    subgraph SGGL["2032-2033 — Global Reach"]
        style SGGL fill:#1a1e3d,stroke:#ff006e,color:#e0e0e0
        GL1[🌍 Global Parliamentary Watch<br/>100+ democracies]
        GL2[🗣️ Every UN Language<br/>Native-quality output]
        GL3[📊 100 Automation Assets<br/>Pre-AGI capabilities]
        GL4[🔒 Zero-Trust Architecture<br/>Quantum-safe cryptography]
    end
    EU1 --> GL1
    EU2 --> GL2
    EU3 --> GL3
    EU4 --> GL4

Phase 6: AGI Era & Transformative Democracy (2034–2037)

When AGI or near-AGI systems emerge, Riksdagsmonitor's modular architecture is designed with flexibility to adapt to future AI paradigm shifts — including potential AGI capabilities — while maintaining democratic safeguards.

%%{init: {'theme': 'dark', 'themeVariables': {'primaryColor': '#ff006e', 'primaryTextColor': '#e0e0e0', 'primaryBorderColor': '#00d9ff', 'lineColor': '#ffbe0b', 'secondaryColor': '#1a1e3d', 'tertiaryColor': '#0a0e27'}}}%%
graph TB
    subgraph SGAGI["🤖 6.1 AGI-Enhanced Intelligence"]
        style SGAGI fill:#1a1e3d,stroke:#ff006e,color:#e0e0e0
        AGI1["🤖 Autonomous Analysis<br/>Real-time intelligence across<br/>all 195 parliamentary systems"]
        AGI2["🌐 Universal Language<br/>Every UN language<br/>supported natively"]
        AGI3["📊 Predictive Governance<br/>Policy impact prediction<br/>before legislation proposed"]
    end
    subgraph SGSAFE["⚖️ 6.2 Democratic Safeguards"]
        style SGSAFE fill:#0a0e27,stroke:#00d9ff,color:#e0e0e0
        SAFE1["⚖️ Ethical AI Governance<br/>Human oversight maintained<br/>regardless of AI capability"]
        SAFE2["🛡️ Anti-Weaponization<br/>Architecture prevents<br/>manipulation or misuse"]
        SAFE3["🔒 Constitutional Alignment<br/>Democratic values encoded<br/>in platform architecture"]
    end
    subgraph SGPARA["🧬 6.3 Paradigm Readiness"]
        style SGPARA fill:#0a0e27,stroke:#ffbe0b,color:#e0e0e0
        PARA1["⚛️ Quantum AI Ready<br/>Post-quantum cryptography<br/>Quantum ML integration"]
        PARA2["🧠 Neuromorphic Computing<br/>Brain-inspired architectures<br/>Edge intelligence deployment"]
        PARA3["🌍 Transformative Platform<br/>120+ automation assets · 195 parliaments<br/>Global democratic intelligence"]
    end
    AGI1 --> SAFE1
    AGI2 --> SAFE2
    AGI3 --> SAFE3
    SAFE1 --> PARA1
    SAFE2 --> PARA2
    SAFE3 --> PARA3

Strategic Considerations for Phase 6:

  • 🤖 Autonomous analysis: AGI-powered real-time political intelligence across all 195 parliamentary systems
  • 🌐 Universal language support: Every UN language supported natively
  • 📊 Predictive governance: Policy impact prediction before legislation is proposed
  • ⚖️ Ethical AI governance: Human oversight maintained regardless of AI capability level
  • 🛡️ Democratic safeguards: Platform architecture prevents weaponization or manipulation

📈 AI Model Evolution Strategy

Illustrative assumptions (high uncertainty — AI landscape evolves rapidly):

  • Model updates assumed roughly quarterly; actual cadence will vary by vendor and paradigm
  • Version numbers (Opus 5.x–12.x) are illustrative — actual products may differ significantly
  • Competitors (OpenAI, Google, Meta, EU sovereign AI) evaluated at each major release cycle
  • Architecture must accommodate potential paradigm shifts (quantum AI, neuromorphic computing, or entirely new approaches)

Workflow Count Projection:

| Year | Automation Assets | AI Model | Key Capability | |:----:|:---------------:|:---------|:---------------| | 2026 | 44→50 | Opus 4.6–4.9 | 🤖 Agentic news generation (current) | | 2027 | 50–55 | Opus 5.x | 🔮 Predictive analytics & Nordic expansion | | 2028 | 55–65 | Opus 6.x | 🎙️ Multi-modal content (audio/video) | | 2029 | 65–75 | Opus 7.x | 🚀 Fully autonomous pipeline | | 2030 | 75–85 | Opus 8.x | 🧠 Near-expert analysis | | 2031–2033 | 85–100 | Opus 9–10.x / Pre-AGI | 🌍 Global parliamentary coverage | | 2034–2037 | 100–120+ | AGI / Post-AGI | ⚡ Transformative democracy platform |

%%{init: {'theme': 'dark', 'themeVariables': {'primaryColor': '#00d9ff', 'primaryTextColor': '#e0e0e0', 'primaryBorderColor': '#ff006e', 'lineColor': '#ffbe0b', 'secondaryColor': '#1a1e3d', 'tertiaryColor': '#0a0e27'}}}%%
xychart-beta
    title "Riksdagsmonitor Workflow Growth Projection (2026–2037)"
    x-axis ["2026", "2027", "2028", "2029", "2030", "2031", "2032", "2033", "2034", "2035", "2036", "2037"]
    y-axis "Automation Assets (Workflows + Prompt Files)" 0 --> 130
    bar [47, 53, 60, 70, 80, 88, 95, 100, 105, 110, 115, 120]
    line [47, 53, 60, 70, 80, 88, 95, 100, 105, 110, 115, 120]

Note: The chart values are midpoint estimates within the projected ranges in the table above and are illustrative, not exact counts.

📋 Detailed Future Planning

| Document | Description | |:---------|:------------| | 📋 Future Workflows | Complete 11-year workflow evolution roadmap with architecture diagrams | | 🗺️ Future Mindmap | Capability expansion map from Swedish monitoring to global democratic intelligence | | 🚀 Future Architecture | Architectural evolution from static site to AI-native platform | | 🔒 Future Security Architecture | Security roadmap including post-quantum cryptography | | 💼 Future SWOT | Strategic opportunities in democratic technology |


🏢 About Hack23

Hack23 AB (Org.nr 5595347807) - Swedish cybersecurity and open-source intelligence consultancy

🤝 Contributing

Contributions welcome! Please follow Hack23's secure development standards:

  1. Fork the repository
  2. Create a feature branch with descriptive name
  3. Sign commits with GPG key
  4. Test changes locally (HTML validation, link checking)
  5. Submit pull request with comprehensive description
  6. Address code review feedback

Requirements:

  • GitHub account with MFA enabled
  • GPG-signed commits
  • HTML validation passing
  • No security vulnerabilities introduced

📜 License

Copyright © 2008-2026 Hack23 AB (Org.nr 5595347807)

Licensed under the Apache License, Version 2.0. See LICENSE file for details.

🔗 Links

👨‍💻 Maintainer

James Pether Sörling
CISSP, CISM
CEO, Hack23 AB
LinkedIn | GitHub


Monitor political activity in Sweden with systematic transparency