Skip to content

misc fixes#8

Merged
HardMax71 merged 1 commit intomainfrom
dev
Dec 5, 2025
Merged

misc fixes#8
HardMax71 merged 1 commit intomainfrom
dev

Conversation

@HardMax71
Copy link
Owner

@HardMax71 HardMax71 commented Dec 5, 2025

  • plantuml -> kiko
  • no anon container for node_modules (now part of frontend)
  • versioning from sha -> 0.1.x, x incremented each run

Summary by CodeRabbit

  • New Features

    • Added the ability to select different image formats when rendering diagrams, providing greater flexibility in diagram presentation
  • Documentation

    • Updated README badge image URLs with expanded tag filtering
  • Refactor

    • Migrated diagram rendering to Kroki.io service
    • Implemented custom encoding solution for improved diagram compression and handling

✏️ Tip: You can customize this high-level summary in your review settings.

- no anon container for node_modules (now part of frontend)
- versioning from sha -> 0.1.x, x incremented each run
@coderabbitai
Copy link

coderabbitai bot commented Dec 5, 2025

Caution

Review failed

The pull request is closed.

Walkthrough

This pull request transitions diagram rendering from the plantuml-encoder library and PlantUML Server to Kroki.io using pako for compression. CI/CD workflows are updated with Node.js setup and refined Docker image tagging. Docker-compose and badge URLs are adjusted accordingly.

Changes

Cohort / File(s) Summary
CI/CD Workflow Updates
.github/workflows/publish-images.yml
Changed Docker image tag generation from branch-based (type=ref,event=branch) to numeric versioning (type=raw,value=0.1.${{ github.run_number }}) with enable guard restricted to main branch.
Added Node.js v20 setup and npm ci installation for frontend dependencies during test workflow execution.
Dependency & Type Management
frontend/package.json
Replaced plantuml-encoder (^1.4.0) with pako (^2.1.0) and added @types/pako (^2.0.3) as devDependency.
Removed type declaration file frontend/src/types/plantuml-encoder.d.ts containing module exports for encode and decode functions.
PlantUML Diagram Rendering
frontend/src/components/PlantUMLDiagram.tsx
Introduced encodeForKroki custom encoding function using pako.deflate at maximum compression with base64 and URL-safe character substitution. Added format parameter (default "svg") to component props. Switched diagram service endpoint from PlantUML Server to Kroki.io with format parameter. Extended useEffect dependency array to include format.
Configuration & Documentation
docker-compose.yaml
Removed host-mounted volume binding for /app/node_modules from frontend service.
Updated badge image URLs in README.md with expanded ignored tag filters (ignore=sha-*,latest).

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~25–30 minutes

Areas requiring extra attention:

  • frontend/src/components/PlantUMLDiagram.tsx — Verify custom encodeForKroki function produces valid Kroki.io-compatible encoding; confirm URL construction and format parameter handling work as expected with the new service.
  • .github/workflows/publish-images.yml — Confirm Docker tag generation logic (run number-based versioning) integrates correctly with registry and no existing image references break; verify main branch guard works as intended.
  • .github/workflows/tests.yml — Ensure Node.js v20 setup and npm ci execution don't conflict with other test steps and that frontend dependencies are installed before tests run.
  • docker-compose.yaml — Confirm removal of node_modules mount doesn't break local development workflows; verify images are rebuilt or dependencies are mounted elsewhere if needed.

Possibly related PRs

  • Added publish scripts  #6 — Adds the plantuml-encoder type declarations that this PR removes while simultaneously replacing the runtime library with pako; overlaps on .github/workflows/publish-images.yml modifications.

Poem

🐰 From PlantUML's Server to Kroki's embrace,
we compress with pako, at a lightning-fast pace,
Docker tags numbered, workflows refined,
a diagram revolution, beautifully designed! ✨

✨ Finishing touches
  • 📝 Generate docstrings
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch dev

📜 Recent review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 0005a41 and 10dd020.

⛔ Files ignored due to path filters (1)
  • frontend/package-lock.json is excluded by !**/package-lock.json
📒 Files selected for processing (7)
  • .github/workflows/publish-images.yml (1 hunks)
  • .github/workflows/tests.yml (1 hunks)
  • README.md (1 hunks)
  • docker-compose.yaml (0 hunks)
  • frontend/package.json (1 hunks)
  • frontend/src/components/PlantUMLDiagram.tsx (1 hunks)
  • frontend/src/types/plantuml-encoder.d.ts (0 hunks)

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@HardMax71 HardMax71 merged commit 6b15e0e into main Dec 5, 2025
3 of 4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant