Skip to content

Update content for the last several years and implement tooling for syncing back to GTN#3

Merged
jmchilton merged 33 commits intomainfrom
updates_2025
Nov 25, 2025
Merged

Update content for the last several years and implement tooling for syncing back to GTN#3
jmchilton merged 33 commits intomainfrom
updates_2025

Conversation

@jmchilton
Copy link
Copy Markdown
Owner

No description provided.

jmchilton and others added 30 commits November 14, 2025 11:25
Sphinx is in optional deps but Makefile wasn't installing them. Use --extra docs
and fix paths to build from project root.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
Added check in sphinx-docs/build.py to respect block.doc.render config. Updated
ecosystem topic to exclude 'please-interrupt' slide from docs.

Syntax already existed in schema, just needed builder support.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
New /add-project-slide command lets users add new projects to the ecosystem
slides by providing a URL. Command fetches README, analyzes existing patterns,
and inserts slide in appropriate category.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
Added slide for galaxyproject/galaxy_codex in user-facing applications section.
Provides community resource catalog and Galaxy Labs for custom subdomains.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
For each GitHub project slide in ecosystem content, added prose block with:
- Links to README and Issues
- License info (linked to actual LICENSE file)

Updated Sphinx builder to include prose blocks in docs output. Prose blocks now
render in docs by default (same smart defaults as slides).

Projects with prose blocks:
- galaxy, training-material, galaxy-hub, galaxy_codex, bioblend
- blend4php, blend4j, docker-galaxy-stable
- tools-iuc, tools-devteam, iwc
- planemo, planemo-machine, galaxy-language-server
- starforge, cargo-port
- gravity, galaxy-helm, pulsar, ephemeris, gxadmin
- total-perspective-vortex, tiaas2

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
Gently suggest adding prose section after slide with quick links (README,
Issues) and license info. Prose enriches docs without cluttering slides.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
Added usegalaxy-eu/galaxy-social - content distribution system for publishing
to multiple social platforms. Includes prose block with quick links and CC0-1.0
license info.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
Reorganized tools-iuc/tools-devteam, planemo/planemo-machine, and API binding
prose blocks into bullet lists for better readability. Each project now has
its own line with consistent formatting.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
Copied build tooling from training-material/topics/dev/images:
- Makefile: Java-based build for PlantUML diagrams
- mindmap_yaml_to_plantuml.py: Mindmap conversion utility
- plantuml_options.txt: PlantUML styling options

SVG diagrams are built from .plantuml.txt sources via make.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
Copied all PlantUML source files from training-material:
- *.plantuml.txt: 41 diagram source files
- *.mindmap.yml: 7 mindmap source files
- plantuml_style.txt: PlantUML styling configuration

SVG diagrams are built from these sources via make(1).

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
Mindmap changes:
- Removed deprecated mvc/ and ui/ from client sources
- Updated store/ to stores/ (now Pinia)
- Fixed container_resolvers_conf.xml.sample -> container_resolvers.yml.sample

Script updates:
- Only process mindmaps with 'files' in name (excludes conceptual diagrams)
- Now handles 6 file-related mindmaps correctly

All files now verify in ~/workspace/galaxy.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
- Convert 8 PlantUML mindmap diagrams to YAML format for programmatic use
- Remove PlantUML source files (kept in build artifacts)
- Add plantuml_to_mindmap_yaml.py converter with HTML entity decoding
- Update generate_files_prose.py to decode HTML entities properly
- Fix tool-util hyphen in code_package diagram
- Now generates 13 prose fragments from mindmap files (added 6 new ones)
- Information preserved: structure, paths, descriptions; formatting lost (not needed)

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
- Add images target to root Makefile that calls images/Makefile
- Make build-sphinx depend on images target
- Add .PHONY declarations to both Makefiles
- Update clean target to remove SVGs from images/
- Images/Makefile now has clean target for SVGs
- Verified: make clean removes all 41 SVGs, make build-sphinx regenerates them

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
- Modify generate_files_prose.py to return non-zero exit code on missing files
- Add make validate-files target to run file validation
- Update help and README with validation workflow
- README includes ongoing maintenance section for file reference validation
- Validates that all mindmap file references exist in ~/workspace/galaxy

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
- Update mindmap_yaml_to_plantuml.py to generate *.mindmap.plantuml.txt
- Update images/Makefile to handle new naming and separate mindmap vs other inputs
- Update images/Makefile clean target to remove *.mindmap.plantuml.txt files
- Update root Makefile clean target to call images/Makefile clean
- Update .gitignore to explicitly ignore intermediate mindmap files
- Allows safe gitignore of generated files while keeping hand-written plantuml

Build chain:
  *.mindmap.yml (source) → *.mindmap.plantuml.txt (intermediate) → *.mindmap.plantuml.svg (output)

All intermediate files now properly cleaned and regenerated.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
- Update all references to mindmap-generated SVG files across all topics
- Changed from *.plantuml.svg to *.mindmap.plantuml.svg
- Updated 4 topic files: application-components, plugins, project-management, client
- Rebuild Sphinx docs to regenerate markdown with correct image paths
- All images now properly appear in HTML documentation

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
- Accidentally deleted in previous commit when removing generated mindmap files
- Restored 26 hand-written *.plantuml.txt files from commit 1da3cd9
- These are source files (not generated) and should be committed to git
- Now build properly generates SVGs from both mindmap and hand-written sources
- Total: 15 mindmap SVGs + 26 hand-written SVGs = 41 diagrams

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
- Integrate sphinx_image_linter.py as final quality gate in make build
- Build now fails if any images are broken or missing
- Copy 10 missing SVG diagrams from ~/workspace/training-material
- Update .gitignore to allow hand-drawn SVGs while ignoring generated ones
- All 81 image references now verify successfully
- Build passes with clean linter report

SVGs added:
  - cluster_support.svg, data_managers.svg
  - hda.svg, libraries.svg, library_permissions.svg
  - usegalaxy_webservers.svg, usegalaxyorg.svg
  - what-is-webpack.svg
  - workflow_definition.svg, workflow_run.svg

The linter now prevents broken documentation from being released.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
Don't add separator after last slide - it's unnecessary for Remark.js and creates inconsistency with training-material format.
- Change sync target from architecture-{N}-{shortname} to architecture-{shortname}
- Format slide titles as 'Architecture NN - {title}' with zero-padded numbers (01-13)
- Titles now sort lexicographically matching directory structure
- Refactor tests to validate real topics instead of isolated temp directories
- Add tests for validation catching missing metadata
- Add tests for topic structure requirements (metadata.yaml, content.yaml)
- Test that validate_all() returns True for valid repo
- All 6 tests now pass
@jmchilton jmchilton merged commit b4edfa5 into main Nov 25, 2025
1 check passed
@jmchilton jmchilton mentioned this pull request Nov 25, 2025
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