Commit graph

181 commits

Author SHA1 Message Date
3239cfbc62 refactor(architecture): reorganize LikeC4 projects and consolidate webcomponents
Renamed resources/likec4 to resources/edp-likec4 to better reflect that this
directory contains the Enterprise Developer Platform architecture models,
not documentation platform architecture.

Extended element kinds in edp-likec4/models/spec.c4 to support documentation
platform modeling:
- Added person, tool, process, repository element kinds
- These allow modeling of documentation workflows and processes

Consolidated webcomponent generation:
- Combined both architecture projects (edp-likec4 and doc-likec4) into a
  single webcomponent output at static/js/likec4-webcomponent.js
- Updated Taskfile.yml to generate from edp-likec4 directory
- Removed duplicate webcomponent script loading in head-end.html
- Fixed CustomElementRegistry duplicate registration issue

Embedded TeleNeoOffice corporate fonts:
- Added font files to static/fonts/ and static/ root
- Required for correct rendering of diagrams in webcomponent
- Fonts are embedded in webcomponent but also served from Hugo static paths
- Fixed 404 errors for font loading

Updated architecture documentation:
- Fixed markdown linting issues (trailing spaces, fence spacing)
- Updated all references from resources/likec4 to resources/edp-likec4
- Enhanced setup.md with correct directory structure

This refactoring enables:
1. Clear separation between EDP architecture and documentation platform models
2. Single consolidated webcomponent containing all architecture views
3. Proper font loading for corporate branding in diagrams
4. Foundation for future architecture documentation expansion

Breaking changes: None (paths updated in documentation)
2025-11-07 11:50:17 +01:00
76937ccadf feat(search): enable offline search with Lunr.js
- Enable offlineSearch = true for client-side search functionality
- Disable Google Custom Search to avoid external API dependency
- Provides instant search across all documentation content
- Works completely offline without server requirements
2025-10-25 23:56:45 +02:00
1d79ce85a5 feat(ui): add git version info display in header
- Display current branch/tag and commit hash in navbar center
- Show dirty working directory indicator with yellow badge
- Add automatic build info generation in Task workflow
- Include build timestamp and user information
- Style with responsive design (hidden on mobile)
- Add .gitignore entries for generated build artifacts
2025-10-25 23:52:04 +02:00
69457ec964 feat(build): add automatic npm dependency management
- Add deps:ensure-npm task to automatically install npm packages when needed
- Configure build, serve, and test tasks to depend on npm dependencies
- Use Task's sources/generates/status for intelligent dependency detection
- Prevents build failures due to missing PostCSS and other npm packages
- Improves developer experience by eliminating manual npm install steps
2025-10-25 09:40:44 +02:00
eec679657b Merge remote-tracking branch 'refs/remotes/ipceicis/development' into development 2025-10-25 09:29:19 +02:00
5a6e6256a4 Merge remote-tracking branch 'refs/remotes/ipceicis-dev/development' into development 2025-10-24 13:14:30 +02:00
5c9e9649ee chore(devbox): update lock file with pinned dependency versions
Pin package versions from @latest to concrete versions for reproducible
development environments across the team.

Changes:
- go: latest → 1.25.1
- hugo: latest → 0.151.0
- nodejs: latest → 24.10.0
- Added nixpkgs-unstable entry (2025-10-20)

This ensures all developers use identical tool versions, improving
build reproducibility and reducing "works on my machine" issues.
2025-10-24 13:10:54 +02:00
8785b327dd feat(docs): integrate LikeC4 interactive diagrams into Hugo/Docsy
Implement complete integration of LikeC4 interactive architecture
diagrams into the Hugo/Docsy documentation system, enabling embedded
web components for exploring C4 models directly in documentation pages.

Integration Components:

Static Assets:
- static/js/likec4-webcomponent.js (3.1 MB) - Generated web component
  containing all 54 C4 views as interactive embeddable elements
- static/js/likec4-loader.js - Dynamic ES6 module loader with fallback
  paths for robust component loading across different page depths
- static/css/likec4-styles.css - Styling for diagram containers with
  dark mode support for Docsy theme compatibility

Hugo Configuration:
- hugo.toml - Added params.likec4.enable configuration flag
- layouts/partials/hooks/head-end.html - Hook to inject CSS and JS
  when LikeC4 is enabled site-wide

Documentation:
- content/en/docs/architecture/_index.md - Architecture section index
- content/en/docs/architecture/highlevelarch.md - Example page with
  interactive OTC FaaS deployment diagram demonstrating integration
- content/en/docs/architecture/setup.md - Comprehensive setup guide
  covering installation, usage, workflow, and troubleshooting
- resources/likec4/INTEGRATION.md - Technical integration details
- LIKEC4-QUICKSTART.md - Quick start guide for developers

Features:
- Interactive diagram exploration (click components for details)
- Automatic loading indicators with timeout fallback
- Graceful degradation for non-JS environments
- Dark mode support matching Docsy theme
- Multiple diagrams per page support
- Browser compatibility detection

Usage Pattern:
```html
<div class="likec4-container">
    <div class="likec4-header">Diagram Title</div>
    <likec4-view view-id="otc-faas" browser="true"></likec4-view>
    <div class="likec4-loading">Loading...</div>
</div>
```

Workflow:
1. Edit .c4 files in resources/likec4/
2. Run: npx likec4 gen webcomponent --webcomponent-prefix likec4
   --outfile ../../static/js/likec4-webcomponent.js
3. Commit both model changes and regenerated webcomponent

Available Views:
- otc-faas, edp, landscape, edpbuilderworkflow
- keycloak, forgejo, argocd, crossplane, monitoring
- And 40+ more component and deployment views

The integration preserves the MkDocs-style embedding approach from
edp-doc while adapting it to Hugo's static site generation model.

This completes the migration making this repository the central hub
for both C4 architecture models and their rendered documentation.
2025-10-24 13:08:59 +02:00
286b427ed8 feat(architecture): migrate LikeC4 models from edp-doc with Git history
Port the complete LikeC4 architecture documentation from the edp-doc
repository to this repository, establishing it as the primary source
for C4 architecture models.

Migration Details:
- Migrated all C4 models from edp-doc/docs/likec4 to resources/likec4/
- Preserved Git history using git filter-branch and git read-tree
- Includes 54 C4 source files covering deployment, components, and views
- Updated LikeC4 to v1.42.1 (from deprecated v0.40.0)

Directory Structure:
- resources/likec4/models/ - C4 model definitions (components, containers, context, code)
- resources/likec4/views/ - View definitions (deployment, EDP, high-level concepts, dynamic)
- resources/likec4/deployment/ - Deployment-specific models (KIND, OTC)
- resources/likec4/doc/ - Documentation and screenshots

Architecture Coverage:
- OTC FaaS deployment architecture
- EDP component and container models
- Developer landscape and workflows
- GitOps inner/outer loop processes
- Infrastructure components (ArgoCD, Forgejo, Keycloak, Crossplane, etc.)

Dependencies:
- likec4@1.42.1
- @likec4/cli@0.40.0

This migration makes the ipceicis-developerframework repository the
authoritative source for architecture documentation. The edp-doc
repository may reference these models via git submodule if needed.

Related: Migration from https://edp.buildth.ing/DevFW/edp-doc
2025-10-24 13:08:28 +02:00
130920faea feat(edge): Added Edge Deployment functionality 2025-10-24 10:28:36 +02:00
b09714c426 feat(edge): Added Edge Deployment functionality 2025-10-24 10:22:10 +02:00
bf72902237 WIP: add release pipeline and documentation
Add automated release workflow for Forgejo that triggers on version tags:
- Multi-platform Docker image builds (amd64, arm64)
- Automatic changelog generation from Git commits
- Forgejo release creation with release notes
- Semantic versioning support (v*.*.*)

Add comprehensive RELEASE.md documentation covering:
- Release process and prerequisites
- Semantic versioning schema
- Step-by-step release instructions
- Best practices and troubleshooting

Needs testing with Forgejo Actions before finalizing.
2025-10-23 17:41:34 +02:00
7e9e427819 fix: use TARGETARCH for multi-platform Docker builds
Use Docker's TARGETARCH variable to download the correct architecture
binaries for Go and Hugo during multi-platform builds. This fixes the
build failure for linux/arm64 where amd64 binaries were being downloaded.

- Add ARG TARGETARCH to capture target architecture
- Replace hardcoded linux-amd64 with linux-${TARGETARCH}
- Applies to both Go and Hugo downloads
- Backwards compatible with local single-platform builds
2025-10-23 17:26:19 +02:00
267b01162f fix: add package-lock.json to repository for npm ci
- Remove package-lock.json from .gitignore
- Add package-lock.json to repository (required for npm ci in Docker build)
- npm ci requires package-lock.json to ensure reproducible builds
2025-10-23 17:20:12 +02:00
1c462af51b fix: ensure package-lock.json is included in Docker build context
npm ci requires package-lock.json to be present in the build context.
Explicitly allow package-lock.json in .dockerignore to fix CI build failure.
2025-10-23 17:15:14 +02:00
fb4ecf6df4 chore: remove generated Hugo resources from repository
Remove auto-generated Hugo image files from resources/_gen/.
These files are build artifacts and should not be version controlled
(already listed in .gitignore but were previously committed).
2025-10-23 17:07:35 +02:00
4294524e81 feat(ci): add Docker build pipeline with version management
- Add multi-stage Dockerfile with pinned tool versions (Node 24.10.0, Go 1.25.1, Hugo 0.151.0)
- Create .env.versions as single source of truth for all tool versions
- Add GitHub Actions CI workflow for automated OCI image builds
  - Multi-arch support (amd64, arm64)
  - Automatic version loading from .env.versions
  - Docker registry push with metadata tags
- Add Taskfile tasks for local OCI image building and testing
  - task build:oci-image - Build with version-pinned dependencies
  - task test:oci-image - Build and test container locally
- Pin devbox.json to specific versions matching .env.versions
- Add comprehensive documentation (DOCKER.md, VERSIONS.md)
- Add helper script (scripts/get-versions.sh) for version extraction

This enables consistent development and production environments with
identical tool versions across local devbox, Docker builds, and CI/CD.
2025-10-23 17:04:28 +02:00
8e0aea2893 feat(theme): improve inline code styling with Telekom colors
- Style inline code blocks (backticks) with soft pink background
- Use Telekom magenta for code text color
- Add border-radius and padding for better readability
- Distinguish inline code from fenced code blocks
2025-10-23 15:43:37 +02:00
a1be93920d feat(theme): implement Telekom design system with magenta color scheme
- Add TeleNeo font family with all weights (300-700)
- Implement Telekom brand colors (magenta #E20074 as primary)
- Add dark mode support with inverted color palette
- Style navigation with soft hover states and active indicators
- Override Bootstrap/Docsy variables for consistent theming
- Fix deprecated Hugo template syntax for Disqus integration
- Apply Telekom-inspired styling to all UI components
2025-10-23 15:21:02 +02:00
43cbd69c9c refactor(docs): migrate existing content to v1 legacy structure
- Move all existing docs content (concepts, project, solution) to /docs/v1/
- Add legacy banner component to warn users about archived documentation
- Create v1 index page with legacy notice and redirect guidance
- Implement automatic banner display for all v1 paths
- Preserve all original content for reference during migration

This enables incremental content migration while maintaining access to
original documentation.
2025-10-23 14:54:08 +02:00
acbdf33fac chore: configure markdownlint VS Code extension
Install and configure markdownlint extension for in-editor linting with
visual feedback (squiggly lines, Problems panel, quick fixes).

Changes:
- Install davidanson.vscode-markdownlint extension
- Configure .vscode/settings.json to use .markdownlint.json
- Enable immediate visual feedback for markdown style issues

Benefits:
- Real-time markdown linting while editing
- Quick fixes via lightbulb (Ctrl+.)
- Problems panel integration (Ctrl+Shift+M)
- Consistent with CLI linting configuration
2025-10-23 14:30:35 +02:00
f797af114b test: configure comprehensive markdown linting with Docsy best practices
Configure markdownlint with rules aligned to technical documentation
standards and Docsy theme conventions.

Design Decisions:
- Enable core quality rules (heading hierarchy, consistent list styles)
- Allow inline HTML for Docsy shortcodes and components
- Permit bare URLs (common in technical documentation)
- Make code block language hints optional (pragmatic for existing content)
- Set maximum 2 consecutive blank lines (balanced readability)
- Enforce single trailing newline (POSIX standard)
- Use asterisk for unordered lists (consistency)
- Allow 2-space list indentation (Markdown standard)

Auto-fixed Issues:
- Converted dash lists to asterisk lists (568 fixes)
- Removed trailing spaces (211 fixes)
- Added missing trailing newlines (74 fixes)
- Added blank lines around lists and headings (100+ fixes)

Remaining Style Warnings (intentionally accepted):
- MD029: List numbering variations in meeting notes (75 instances)
- MD036: Bold text for section headers in ADRs (13 instances)
- MD025: Multiple H1 in notes/brainstorming docs (10 instances)
- MD032/MD022: Minor spacing variations (15 instances)

Test Results:
 Hugo build: 227 pages generated successfully
 HTML validation: No errors
 Link checking: All links valid (except dev-only livereload)
 Markdown linting: Only non-critical style warnings remain

The configuration balances strict quality checks with pragmatic
flexibility for diverse content types (documentation, ADRs, meeting
notes, tutorials).
2025-10-23 14:25:46 +02:00
3eaa574a26 docs(dev): add Taskfile and developer documentation
- Add Taskfile.yml with common development tasks
- Add go-task to devbox dependencies
- Create comprehensive README-developer.md covering:
  - Devbox setup and usage
  - Hugo and Docsy basics
  - Task commands reference
  - Development workflow
  - Content creation guide
  - Testing procedures
  - Troubleshooting tips
2025-10-23 14:13:31 +02:00
08a0e8863f chore(config): improve .gitignore for Hugo project
- Add resources/_gen/ for Hugo-generated assets
- Add node_modules/ for NPM dependencies
- Add test output directories (tmp/, .htmltest/)
- Add devbox local directory (.devbox/)
- Add IDE files (VS Code, IntelliJ, Vim)
- Add OS-specific files (macOS, Windows)
- Add log files
- Remove package.json from ignore (needed for NPM scripts)
2025-10-23 14:02:54 +02:00
12e31ede91 test: add comprehensive testing infrastructure
- Add npm test scripts for build, markdown, HTML, and link validation
- Install markdownlint-cli for content quality checks
- Install html-validate for HTML5 conformity validation
- Add htmltest (via devbox) for internal/external link checking
- Configure test rules in .htmltest.yml, .htmlvalidate.json, .markdownlint.json
- Add GitHub Actions workflow for automated CI testing
- Add TESTING.md documentation for test usage
2025-10-23 14:02:39 +02:00
d6f3d67724 chore(deps): update Hugo to v0.151.0 and Docsy to v0.12.0
- Upgrade Hugo from v0.125.4 to v0.151.0+extended
- Upgrade Docsy theme from v0.10.0 to v0.12.0
- Update Bootstrap to v5.3.8
- Update Go to v1.25.1
- Add Node.js for PostCSS support
- Install PostCSS, autoprefixer dependencies
- Remove obsolete custom render-heading template
- Update minimum Hugo version requirement to 0.151.0
2025-10-23 14:02:22 +02:00
Bot
ceb213cf64 doc(work-structure): MVP1-12-OTC kickoff planning 2025-04-29 15:23:37 +02:00
Bot
1bbedec64a ex post: review minutes 01.04.25 2025-04-29 15:21:31 +02:00
fa1e343247 doc(arch): minutes of a robert-stephan talk about crossplane vs terraform 2025-03-31 09:58:40 +02:00
2949d154f9 chore(architecture): minutes of several meetings in the new-architecture agenda 2025-02-25 16:32:30 +01:00
908f2c1c93 doc(concepts): building blocks of platforms recommended by John Dietz, CEO of Konstruct 2025-01-23 15:44:55 +01:00
828bc484c9 chore(): adjusted frontmatter 2024-12-19 21:52:35 +01:00
860d61c2f4 Merge remote-tracking branch 'refs/remotes/ipceicis/pipeline-adr' into pipeline-adr 2024-12-19 11:02:35 +01:00
Kai Reichart
4d8e1c8938 updated adr 2024-12-19 10:28:28 +01:00
Kai Reichart
92cd525ea9 added ADR for pipelines 2024-12-19 10:28:28 +01:00
311269eb39 Merge branch 'development' 2024-12-19 10:04:45 +01:00
9e6d42ffb0 Update _index.md
more details for dashboards, nginx
2024-12-13 15:02:20 +01:00
7ab69e9139 fix(): typo 2024-12-11 15:05:15 +01:00
8599ddbefc Telemetry Use Case
added Telemetry Use Case showing Fibonacci workload
2024-12-05 14:27:02 +01:00
662d26581c feat(architecture): WiP ... just a notice on the outcome of today's arch session 2024-12-04 14:48:53 +01:00
58da741bca doc(architecture): added architectural decision of templated stacks 2024-12-04 14:36:59 +01:00
1b77a80563 Merge remote-tracking branch 'refs/remotes/ipceicis-dev/main' 2024-11-29 09:00:58 +01:00
e0dce8ef46 deploy kube-prometheus (2) 2024-11-28 15:23:40 +01:00
0b7a85575e deploy kube-prometheus 2024-11-28 15:18:10 +01:00
a8bf2ae252 fix(pos-structure): addid cahrts, refactored 2024-11-27 11:13:36 +01:00
6b37c0b08a feat(poc-structure): added high level design of poc output 2024-11-26 16:50:01 +01:00
9ec0ae1ca9 Merge branch 'development' into feature/IPCEICIS-724-work-out-concept-for-repository-process-and-structure-especially-poc 2024-11-26 16:36:16 +01:00
b377a35439 doc(stakeholder-workshop): finalized documentation 2024-11-25 15:41:23 +01:00
4ca5829b90 Merge branch 'development' into stakeholder-workshop 2024-11-25 14:44:29 +01:00
741563c236 feat(team-process): IPCEICIS-724, WiP, to be discussed in arch session 2024-11-19 13:24:17 +01:00