๐ Conceptual Relationships and System Components
๐ฏ Holistic View of Platform Architecture and Capabilities
๐ Document Owner: CEO | ๐ Version: 1.0 | ๐
Last Updated:
2026-03-19 (UTC)
๐ Review Cycle: Quarterly | โฐ Next Review: 2026-06-19
๐ท๏ธ Classification: Public (Open Source European Parliament Monitoring
Platform)
| Document | Focus | Description | Documentation Link |
|---|---|---|---|
| Architecture | ๐๏ธ Architecture | C4 model showing current system structure | View Source |
| Future Architecture | ๐๏ธ Architecture | C4 model showing future system structure | View Source |
| Mindmaps | ๐ง Concept | Current system component relationships | View Source |
| Future Mindmaps | ๐ง Concept | Future capability evolution | View Source |
| SWOT Analysis | ๐ผ Business | Current strategic assessment | View Source |
| Future SWOT Analysis | ๐ผ Business | Future strategic opportunities | View Source |
| Data Model | ๐ Data | Current data structures and relationships | View Source |
| Future Data Model | ๐ Data | Enhanced European Parliament data architecture | View Source |
| Flowcharts | ๐ Process | Current data processing workflows | View Source |
| Future Flowcharts | ๐ Process | Enhanced AI-driven workflows | View Source |
| State Diagrams | ๐ Behavior | Current system state transitions | View Source |
| Future State Diagrams | ๐ Behavior | Enhanced adaptive state transitions | View Source |
| Security Architecture | ๐ก๏ธ Security | Current security implementation | View Source |
| Future Security Architecture | ๐ก๏ธ Security | Security enhancement roadmap | View Source |
| Threat Model | ๐ฏ Security | STRIDE threat analysis | View Source |
| Classification | ๐ท๏ธ Governance | CIA classification & BCP | View Source |
| CRA Assessment | ๐ก๏ธ Compliance | Cyber Resilience Act | View Source |
| Workflows | โ๏ธ DevOps | CI/CD documentation | View Source |
| Future Workflows | ๐ DevOps | Planned CI/CD enhancements | View Source |
| Business Continuity Plan | ๐ Resilience | Recovery planning | View Source |
| Financial Security Plan | ๐ฐ Financial | Cost & security analysis | View Source |
| End-of-Life Strategy | ๐ฆ Lifecycle | Technology EOL planning | View Source |
| Unit Test Plan | ๐งช Testing | Unit testing strategy | View Source |
| E2E Test Plan | ๐ Testing | End-to-end testing | View Source |
| Performance Testing | โก Performance | Performance benchmarks | View Source |
| Security Policy | ๐ Security | Vulnerability reporting & security policy | View Source |
This conceptual documentation implements controls aligned with Hack23 AB's publicly available ISMS framework.
| Policy | Relevance |
|---|---|
| Secure Development Policy | Architecture documentation requirements per C4 model |
| Information Security Policy | System design aligned with security governance framework |
| Classification Framework | Data and component classification per CIA triad |
| Open Source Policy | Open-source architecture transparency |
This document provides conceptual mindmaps that illustrate the relationships between components, capabilities, and concepts within the EU Parliament Monitor ecosystem. Unlike C4 diagrams (structure) or flowcharts (process), mindmaps show conceptual connections and knowledge domains.
Mindmaps serve to:
This document contains five primary mindmaps:
Complete view of the EU Parliament Monitor system, its purpose, and major capabilities.
mindmap
root((EU Parliament<br/>Monitor))
Mission
Democratic Transparency
Public Information
Open Data Access
Political Accountability
Multi-Language Support
14 Languages
EN, SV, DA, NO
FI, DE, FR, ES
NL, AR, HE, JA
KO, ZH
Native Speakers
Cultural Adaptation
Automated Intelligence
AI-Powered Analysis
Continuous Monitoring
Real-Time Updates
Core Capabilities
News Generation
Week Ahead
Committee Reports
Propositions
Motions
Breaking News
Content Types
Prospective Articles
Retrospective Analysis
Event Summaries
Trend Reports
Multi-Language Publishing
Simultaneous Generation
Language-Specific Content
SEO Optimization
Static Site Delivery
GitHub Pages
Zero Infrastructure
Global CDN
Key Stakeholders
European Citizens
Information Seekers
Politically Engaged
Language Preference
Journalists
Research Source
Story Development
Fact Checking
Political Researchers
Academic Studies
Policy Analysis
Trend Analysis
Developers
Open Source Contributors
Platform Maintainers
Security Auditors
Technical Foundation
Static Architecture
No Runtime Dependencies
Build-Time Generation
Immutable Artifacts
Zero Database
GitHub Infrastructure
Actions for CI/CD
Pages for Hosting
Security Scanning
Dependabot Updates
MCP Integration
European Parliament Server
Structured Data Access
Type-Safe Communication
Retry & Fallback
LLM Processing
Content Generation
Multi-Language Translation
Fact Synthesis
Style Consistency
| Concept | Sub-Concepts | Description |
|---|---|---|
| Mission | Democratic Transparency, Multi-Language, Automated Intelligence | Core purpose and values |
| Core Capabilities | News Generation, Content Types, Publishing, Delivery | What the system does |
| Key Stakeholders | Citizens, Journalists, Researchers, Developers | Who uses the system |
| Technical Foundation | Static Architecture, GitHub, MCP, LLM | How it's built |
Data sources, transformations, and outputs in the EU Parliament Monitor pipeline.
mindmap
root((Data<br/>Ecosystem))
Data Sources
European Parliament APIs
Plenary Sessions
Session Schedule
Agenda Items
Voting Records
Attendance Data
Committee Meetings
Committee Names
Meeting Schedule
Topics Discussed
Decisions Made
Documents
Proposals
Reports
Amendments
Resolutions
Parliamentary Questions
Written Questions
Oral Questions
Answers
Follow-ups
MCP Server
Data Abstraction
Query Interface
Response Caching
Error Handling
Fallback Data
Placeholder Content
Historical Data
Demo Content
Error Messages
Data Transformations
Data Acquisition
API Requests
JSON Parsing
Schema Validation
Type Checking
Data Validation
Structure Checks
Required Fields
Value Constraints
Range Validation
Data Sanitization
HTML Encoding
Script Removal
Event Handler Removal
Link Validation
Data Enrichment
Metadata Addition
Timestamp Recording
Source Attribution
Provenance Tracking
Content Generation
LLM Prompting
Template Application
Multi-Language Translation
SEO Optimization
Data Storage
File System
HTML Files
JSON Metadata
Static Assets
Index Files
Git Repository
Version Control
Change History
Commit Metadata
Branch Management
Build Artifacts
Compiled HTML
Sitemap XML
Language Indexes
Asset Manifests
Data Outputs
HTML Articles
Multi-Language
Semantic Markup
Accessibility Features
SEO Tags
Index Pages
Language-Specific
Date-Sorted
Category Filtered
Search Enabled
Sitemap
URL Listing
Priority Setting
Change Frequency
Last Modified
Metadata Files
Generation Info
Source Attribution
Version Tracking
Quality Metrics
flowchart LR
A[EP APIs] -->|JSON| B[MCP Server]
B -->|Structured Data| C[Validation]
C -->|Valid Data| D[Sanitization]
D -->|Clean Data| E[LLM Processing]
E -->|Generated Content| F[Multi-Language]
F -->|14 Languages| G[HTML Generation]
G -->|Static Files| H[Git Repository]
H -->|Push| I[GitHub Pages]
I -->|CDN| J[Public Website]
B -.->|Error| K[Fallback Content]
K -.->|Placeholder| E
style A fill:#e1f5ff
style B fill:#e8f5e9
style E fill:#fff4e1
style G fill:#e8f5e9
style I fill:#e1f5ff
style J fill:#d4edda
Technology stack, infrastructure, and development practices.
mindmap
root((Technical<br/>Architecture))
Runtime Environment
Node.js 25
LTS Support
Performance
ES Modules
Latest Features
TypeScript
Strict Mode
Type Safety
Async/Await
Error Handling
GitHub-Hosted Runners
Ubuntu Latest
Ephemeral Execution
Security Isolation
Resource Limits
Development Stack
Build Tools
npm/package.json
ESLint
Prettier
Husky Git Hooks
Testing Framework
Vitest
Unit Tests
Integration Tests
E2E with Playwright
Code Quality
SonarCloud
CodeQL
Dependency Scanning
License Compliance
Documentation
Markdown
Mermaid Diagrams
JSDoc Comments
Architecture Docs
Infrastructure
GitHub Platform
Source Control
Git Repository
Branch Protection
Pull Requests
Code Review
CI/CD
GitHub Actions
Workflow Automation
Secret Management
Environment Variables
Hosting
GitHub Pages
Custom Domain
HTTPS/SSL
Global CDN
Security
Dependabot
Secret Scanning
Code Scanning
SLSA Attestations
MCP Communication
Protocol
JSON-RPC 2.0
Stdin/Stdout
Type-Safe
Versioned
Tools
get_meps
get_plenary_sessions
search_documents
get_parliamentary_questions
get_committee_info
get_voting_records
Error Handling
Retry Logic
Exponential Backoff
Fallback Mode
Error Logging
Security Architecture
Defense in Depth
Static Content
No Server Execution
No Database
No User Sessions
No Authentication
Input Validation
Schema Validation
Type Checking
Range Validation
Sanitization
Output Encoding
HTML Entity Encoding
XSS Prevention
CSP Headers
Content Security
Supply Chain Security
SHA-Pinned Actions
SBOM Generation
Vulnerability Scanning
License Compliance
Compliance Framework
ISO 27001
Security Controls
Risk Management
Audit Trail
Documentation
GDPR
No PII Collection
Data Minimization
Privacy by Design
User Rights
NIS2
Incident Response
Security Monitoring
Vulnerability Management
Supply Chain Security
graph TB
subgraph "Presentation Layer"
A[Static HTML/CSS]
B[Multi-Language Content]
C[Responsive Design]
end
subgraph "Generation Layer"
D[Node.js Scripts]
E[LLM Integration]
F[Template Engine]
end
subgraph "Data Layer"
G[European Parliament MCP]
H[EP APIs]
I[JSON Data]
end
subgraph "Infrastructure Layer"
J[GitHub Actions]
K[GitHub Pages]
L[CDN Distribution]
end
subgraph "Security Layer"
M[CodeQL SAST]
N[Dependabot SCA]
O[Input Validation]
P[Output Encoding]
end
A --> D
B --> D
C --> D
D --> G
E --> D
F --> D
G --> H
H --> I
D --> J
J --> K
K --> L
M --> D
N --> J
O --> D
P --> A
style A fill:#e8f5e9
style D fill:#e1f5ff
style G fill:#fff4e1
style J fill:#e1f5ff
style M fill:#ffe1e1
LLM-powered content creation workflow and capabilities.
mindmap
root((Content<br/>Generation))
Input Sources
Parliamentary Data
Session Information
Committee Activities
Document Content
Question Records
Article Requirements
Article Type
Target Language
Content Length
Style Guidelines
Context Information
Historical Data
Related Events
Background Info
Source Citations
LLM Processing
Prompt Engineering
System Prompts
Role Definition
Style Guidelines
Factual Requirements
Output Format
Context Injection
Source Data
Metadata
Instructions
Examples
Temperature Control
Consistency
Creativity Balance
Fact Accuracy
Style Adherence
Content Generation
Article Creation
Title Generation
Subtitle Creation
Summary Paragraph
Detailed Analysis
Key Points List
Multi-Language
Translation Prompts
Cultural Adaptation
Idiom Handling
Format Preservation
Fact Checking
Source Verification
Citation Accuracy
Data Consistency
Logic Validation
Post-Processing
Content Validation
Schema Compliance
Required Fields
Length Limits
Format Rules
HTML Generation
Semantic Markup
Accessibility
SEO Tags
Meta Information
Quality Assurance
Spell Check
Grammar Check
Style Consistency
Link Validation
Sanitization
XSS Prevention
Script Removal
Event Handler Removal
Safe HTML Only
Output Types
Week Ahead Articles
Upcoming Sessions
Scheduled Events
Committee Meetings
Expected Votes
Committee Reports
Meeting Summaries
Decisions Made
Topics Discussed
Next Steps
Proposition Analysis
Proposal Details
Impact Assessment
Stakeholder Views
Expert Commentary
Breaking News
Urgent Updates
Vote Results
Major Decisions
Political Developments
flowchart TD
Start[๐ Article Request] --> Type{Article Type}
Type -->|Week Ahead| WA[Fetch Schedule Data]
Type -->|Committee| CR[Fetch Meeting Data]
Type -->|Proposition| PA[Fetch Proposal Data]
Type -->|Breaking| BN[Fetch Latest Events]
WA --> Prompt[๐ค Generate LLM Prompt]
CR --> Prompt
PA --> Prompt
BN --> Prompt
Prompt --> System[Add System Context]
System --> Context[Inject Source Data]
Context --> Send[Send to LLM]
Send --> Receive[Receive Generated Content]
Receive --> Validate{โ
Validate}
Validate -->|Invalid| Retry[Retry Generation]
Retry --> Send
Validate -->|Valid| Translate[๐ Multi-Language]
Translate --> L1[English]
Translate --> L2[Swedish]
Translate --> L3[Danish]
Translate --> L4[Norwegian]
Translate --> L5[Finnish]
Translate --> L6[German]
Translate --> L7[French]
Translate --> L8[Spanish]
Translate --> L9[Dutch]
Translate --> L10[Arabic]
Translate --> L11[Hebrew]
Translate --> L12[Japanese]
Translate --> L13[Korean]
Translate --> L14[Chinese]
L1 --> HTML[Generate HTML]
L2 --> HTML
L3 --> HTML
L4 --> HTML
L5 --> HTML
L6 --> HTML
L7 --> HTML
L8 --> HTML
L9 --> HTML
L10 --> HTML
L11 --> HTML
L12 --> HTML
L13 --> HTML
L14 --> HTML
HTML --> Sanitize[๐งน Sanitize Content]
Sanitize --> QA[Quality Assurance]
QA --> Publish[๐ฆ Publish Article]
Publish --> End[โ
Complete]
style Start fill:#e8f5e9
style Send fill:#fff4e1
style Translate fill:#e1f5ff
style Publish fill:#d4edda
style End fill:#d4edda
Security controls, compliance requirements, and best practices.
mindmap
root((Security &<br/>Compliance))
Threat Model
Attack Vectors
XSS Injection
Script Tags
Event Handlers
Data URIs
SVG Exploits
Data Injection
HTML Injection
JSON Injection
Command Injection
Path Traversal
Supply Chain
Malicious Dependencies
Compromised Packages
Vulnerable Libraries
Outdated Components
Infrastructure
GitHub Account Compromise
Workflow Manipulation
Secret Exposure
Access Control
Mitigations
Input Validation
Schema Validation
Type Checking
Whitelist Filtering
Length Limits
Output Encoding
HTML Entity Encoding
JavaScript Escaping
URL Encoding
CSS Sanitization
Dependency Management
SHA Pinning
Vulnerability Scanning
Update Automation
License Compliance
Access Control
Branch Protection
Required Reviews
Secret Management
Least Privilege
Security Controls
Static Analysis
CodeQL
TypeScript Analysis
Vulnerability Detection
Data Flow Analysis
Control Flow Analysis
ESLint Security
Security Rules
Best Practices
Code Standards
Error Detection
SonarCloud
Code Quality
Security Hotspots
Technical Debt
Maintainability
Dynamic Analysis
Dependency Scanning
npm audit
Dependabot Alerts
CVE Monitoring
CVSS Scoring
Secret Scanning
GitHub Secret Scanning
Token Detection
API Key Detection
Credential Leaks
License Compliance
REUSE Compliance
License Compatibility
Attribution
Runtime Protection
Content Security Policy
Script Sources
Style Sources
Frame Ancestors
Object Sources
HTTPS Enforcement
TLS 1.3
HSTS Headers
Secure Cookies
Mixed Content Prevention
Rate Limiting
API Rate Limits
Retry Backoff
Resource Quotas
Abuse Prevention
Compliance Framework
ISO 27001
Information Security
Risk Assessment
Security Controls
Access Management
Incident Response
Documentation
Policies
Procedures
Risk Register
Audit Evidence
Continuous Improvement
Monitoring
Review
Corrective Actions
Preventive Actions
GDPR
Data Protection
No PII Collection
Data Minimization
Purpose Limitation
Storage Limitation
Privacy Rights
Right to Access
Right to Erasure
Right to Portability
Right to Object
Legal Basis
Public Interest
Legitimate Interest
Transparency
Accountability
NIS2
Security Requirements
Risk Management
Incident Reporting
Supply Chain Security
Vulnerability Management
Governance
Management Responsibility
Security Policies
Training Programs
Audit & Assessment
Essential Services
Availability
Integrity
Confidentiality
Resilience
EU CRA
Product Security
Secure Development
Vulnerability Disclosure
Security Updates
SBOM Generation
Conformity Assessment
Risk Classification
Documentation
Testing
Certification
Market Surveillance
Incident Reporting
Product Recalls
Compliance Monitoring
Enforcement
graph TB
subgraph "Layer 1: Prevention"
A[Input Validation]
B[Output Encoding]
C[Secure Defaults]
end
subgraph "Layer 2: Detection"
D[Static Analysis]
E[Dependency Scanning]
F[Secret Scanning]
end
subgraph "Layer 3: Response"
G[Automated Fixes]
H[Security Updates]
I[Incident Response]
end
subgraph "Layer 4: Recovery"
J[Git History]
K[Rollback Capability]
L[Disaster Recovery]
end
subgraph "Layer 5: Assurance"
M[Audit Logging]
N[Compliance Reports]
O[Security Reviews]
end
A --> D
B --> D
C --> D
D --> G
E --> H
F --> I
G --> M
H --> M
I --> J
J --> K
K --> L
M --> N
N --> O
style A fill:#e8f5e9
style D fill:#e1f5ff
style G fill:#fff4e1
style J fill:#ffe1e1
style M fill:#e1f5ff
Mindmaps follow these design principles for consistency and clarity.
mindmap
root((Color<br/>Legend))
Data & Content
Light Blue
Data Sources
Data Processing
Information Flow
Technical Components
Light Green
Infrastructure
Build Tools
Runtime Environment
AI & Intelligence
Light Yellow
LLM Processing
Content Generation
AI Capabilities
Security & Compliance
Light Red/Pink
Security Controls
Threat Detection
Compliance Requirements
Success & Outcomes
Dark Green
Published Content
Completed Tasks
Achieved Goals
| Node Type | Usage | Example |
|---|---|---|
| Root Node | Central concept | EU Parliament Monitor |
| Primary Branch | Major category | Mission, Capabilities, Stakeholders |
| Secondary Branch | Subcategory | Democratic Transparency, News Generation |
| Leaf Node | Specific concept | Week Ahead, Committee Reports |
Different types of relationships shown in mindmaps:
| Relationship | Description | Example |
|---|---|---|
| IS-A | Type/subtype relationship | "Week Ahead" IS-A "Article Type" |
| HAS-A | Composition relationship | "System" HAS-A "MCP Integration" |
| USES | Dependency relationship | "Generator" USES "LLM Service" |
| PRODUCES | Output relationship | "Generation" PRODUCES "HTML Files" |
| REQUIRES | Prerequisite relationship | "Publishing" REQUIRES "Validation" |
| ENABLES | Capability relationship | "MCP" ENABLES "Data Access" |
| Mindmap Section | Related C4 Diagram | Related Flowchart | Related State Diagram |
|---|---|---|---|
| System Overview | Context Diagram | News Generation Flow | System Lifecycle |
| Data Ecosystem | Container Diagram | Data Processing Flow | Article Lifecycle |
| Technical Architecture | Component Diagram | Validation Flow | MCP Connection State |
| Content Generation | Component Diagram | Generation Flow | Article State |
| Security & Compliance | Component Diagram | Security Flow | Error Handling State |
graph LR
A[MINDMAP.md] -->|Structure| B[ARCHITECTURE.md]
A -->|Process| C[FLOWCHART.md]
A -->|Behavior| D[STATEDIAGRAM.md]
A -->|Data| E[DATA_MODEL.md]
A -->|Security| F[SECURITY_ARCHITECTURE.md]
A -->|Strategy| G[SWOT.md]
B -->|Detailed View| A
C -->|Detailed View| A
D -->|Detailed View| A
E -->|Detailed View| A
F -->|Detailed View| A
G -->|Detailed View| A
style A fill:#fff4e1
style B fill:#e1f5ff
style C fill:#e1f5ff
style D fill:#e1f5ff
style E fill:#e8f5e9
style F fill:#ffe1e1
style G fill:#e8f5e9
Purpose: Quick system understanding without deep technical dive
How to Use:
Expected Outcome: Holistic understanding in 15-30 minutes
Purpose: Design decisions and system evolution planning
How to Use:
Expected Outcome: Informed architectural decisions
Purpose: Security posture assessment
How to Use:
Expected Outcome: Security assessment report
Purpose: Feature planning and prioritization
How to Use:
Expected Outcome: Product roadmap alignment
| Capability | Measurement | Target | Current |
|---|---|---|---|
| Article Types | Number of types supported | 5+ | 5 |
| Languages | Number of languages | 14 | 14 |
| Data Sources | Number of EP MCP tools | 6+ | 6 |
| Generation Time | Average time per article set | <5 min | ~3 min |
| Validation Pass Rate | Articles passing validation | >98% | 99.2% |
| Deployment Success | Successful deployments | >99% | 99.5% |
| Component | Metric | Target | Status |
|---|---|---|---|
| Node.js | Version currency | Latest LTS | โ 25.x |
| Dependencies | Vulnerabilities | 0 critical/high | โ 0 |
| Test Coverage | Code coverage | >80% | โ 85% |
| Build Time | CI/CD duration | <10 min | โ 6 min |
| Code Quality | SonarCloud score | A | ๐ Setup pending |
graph TB
A[EU Parliament Monitor] --> B[ISO 27001]
A --> C[GDPR]
A --> D[NIS2]
A --> E[EU CRA]
B --> B1[Risk Management]
B --> B2[Access Control]
B --> B3[Incident Response]
C --> C1[Data Protection]
C --> C2[Privacy Rights]
C --> C3[Legal Basis]
D --> D1[Security Requirements]
D --> D2[Governance]
D --> D3[Essential Services]
E --> E1[Product Security]
E --> E2[Conformity Assessment]
E --> E3[Market Surveillance]
style A fill:#fff4e1
style B fill:#e1f5ff
style C fill:#e8f5e9
style D fill:#e1f5ff
style E fill:#e8f5e9
| Version | Date | Author | Changes |
|---|---|---|---|
| 1.1 | 2026-02-24 | CEO | Updated review date and verified current state accuracy |
| 1.0 | 2025-02-17 | CEO | Initial mindmap documentation with comprehensive conceptual views |
Document Classification: Public
ISMS Compliance: ISO 27001:2022 compliant, GDPR compliant, NIS2 aligned
Technology Stack: Node.js 25, GitHub Actions, GitHub Pages, European
Parliament MCP Server
Architecture Pattern: Static Site Generator with Zero Runtime Dependencies
Review Status: Active, next review 2026-05-24
๐ง Mindmaps โ Conceptual Architecture for EU Parliament Monitor
Part of ISMS-compliant Architecture Documentation Suite
๐๏ธ GitHub Repository โข ๐ก๏ธ ISMS Framework โข ๐ Hack23