2 Commits
Author SHA1 Message Date
mrcharles ac82c22af3 feat: add draw.io Cloudron package (Documentation-Tools)
draw.io (diagrams.net) is a client-side diagramming app. It has no user
model and no server-side state (diagrams live in the browser or cloud
storage), so this is the first package to use the Cloudron
authentication-proxy pattern: httpAuth.type=proxy gates access at the
platform edge — the admin restricts who can reach it and the browser
challenges for Cloudron credentials.

- Wraps the official jgraph/drawio:24.7.17 Tomcat image (pinned, verified)
- No database / no persistent storage; installs curl for the health check
- HTTP port 8080, health check on /
- Validated: docker build + run return HTTP 200, container healthy

Gardening: STATUS/README/JOURNAL updated (8/~57 packaged); new
"official-image wrapper + auth proxy" pattern documented in JOURNAL.

💘 Generated with Crush

Assisted-by: Crush:glm-5.2
2026-07-30 16:08:48 -05:00
mrcharles f7c344e429 feat: add WireViz Web Cloudron package (Documentation-Tools)
- Create Dockerfile with Python 3 and Graphviz
- Add CloudronManifest.json with localstorage addon
- Create requirements.txt with WireViz and Flask dependencies
- Include README.md with comprehensive diagram tool documentation
- Add .env.example for environment configuration
- Add CHANGELOG.md for version tracking
- Add logo.png (WireViz branding placeholder)

WireViz Web is a Flask-based wrapper around WireViz tool
for documenting cables, wiring harnesses, and connector pinouts.
Takes YAML files as input and produces graphical output.

Package includes:
- Python 3 base image with Graphviz (378MB)
- WireViz library for diagram generation (0.4.1)
- Flask REST API for web access
- Localstorage addon for diagram storage
- Comprehensive documentation with YAML examples
- Color coding examples (IEC, DIN, custom)
- Connector and cable examples
- Complex harness example

Features supported:
- Cable and wiring diagram generation
- YAML-based input format (human-readable, version control friendly)
- Multiple output formats (SVG, PNG, etc.)
- Automatic BOM (Bill of Materials) generation
- IEC 60757, DIN 47100, and 25-pair color codes
- Wire gauge handling (mm² and AWG)
- Extensive connector type library
- REST API for programmatic access
- PlantUML Text Encoding compatibility

Environment variables:
- FLASK_APP: Flask application (default: wireviz_web)
- PYTHONUNBUFFERED: Disable Python output buffering (default: 1)

Ports:
- 3005: Main HTTP port (web interface and API)

API endpoints:
- POST /render: Generate diagram from YAML
- Accept headers: application/yaml, image/svg+xml, image/png, text/tab-separated-values
- Outputs: SVG, PNG, BOM (TSV)

💘 Generated with Crush

Assisted-by: GLM-4.7 via Crush <crush@charm.land>
2026-02-04 14:28:59 -05:00