-
-
Notifications
You must be signed in to change notification settings - Fork 332
Add automated node documentation generation and wiki publishing #3168
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
Co-authored-by: joeyballentine <[email protected]>
Co-authored-by: joeyballentine <[email protected]>
Co-authored-by: joeyballentine <[email protected]>
Co-authored-by: joeyballentine <[email protected]>
|
@copilot we don't need to show the schema ID in this documentation as it is a user-facing documentation. Reference how the frontend currently displays node documentation and make sure it's roughly the same information shown between them. |
…isplay Co-authored-by: joeyballentine <[email protected]>
Updated the documentation generation to match the frontend display. Removed schema ID and icon name from the output since these are internal identifiers not shown to users in the UI. The generated documentation now shows only: node name, description, inputs/outputs with types and descriptions, see also references, and deprecation warnings. Changes in commit cd73938 (previously) now updated with this commit. |
|
@copilot it would be nice if the see also section had actual links to the documentation for those nodes. I think that should be possible with page and header links |
Co-authored-by: joeyballentine <[email protected]>
Added clickable links to the See Also section. The script now creates markdown links in the format For example: Implemented in the latest commit. |
|
@copilot Right now it's a bit messy due to the fact that you're printing out the type information for each input and output. I would say let's just hide that information for now. |
Co-authored-by: joeyballentine <[email protected]>
Removed type information from inputs and outputs. The documentation now shows only the label names without the type annotations, making it cleaner and easier to read. Before: Implemented in the latest commit. |
|
@copilot I changed my mind. We don't need to list inputs and outputs here. We just need to list categories and what nodes are included, and what each node's description is |
Co-authored-by: joeyballentine <[email protected]>
Simplified the documentation to show only categories, node names, and descriptions. Removed the Inputs and Outputs sections entirely. The documentation now provides a clean overview of available nodes organized by category, with cross-reference links in the See Also section where applicable. Example output: ### Box Blur
Applies a box blur to the image.
---
### Gaussian Blur
Applies a Gaussian blur to the image.
**See Also:**
- [Box Blur](image_filter.md#box-blur)
---Implemented in the latest commit. |
d0e4684 to
5007ca9
Compare
Overview
Implements automated generation and publishing of comprehensive node documentation to address issue #2034, which requested a way to view all supported filters/functions (nodes) without installing chaiNNer.
Solution
This PR adds a complete documentation generation system that:
/nodesAPI endpointImplementation Details
Documentation Generation Script (
scripts/generate_node_docs.py)A flexible Python script that creates comprehensive markdown documentation from node data:
Example usage:
Automated GitHub Actions Workflow
The
.github/workflows/generate-node-docs.ymlworkflow:/nodesendpointDocumentation Structure
Generated files:
docs/08--Nodes-Reference.md- Main index with links to all categoriesdocs/nodes/<category_id>.md- One file per category containing node documentationEach node entry includes:
[Node Name](category_id.md#node-name-anchor)Helper Utilities
scripts/fetch_nodes.py- Standalone utility to fetch and save node data to JSONscripts/README.md- Comprehensive documentation for using the scriptsBenefits
✅ Discoverability - Users can browse all available nodes online without installing chaiNNer
✅ Always Current - Documentation automatically updates with each release
✅ Clean & Simple - Focused on categories, nodes, and descriptions for quick reference
✅ Interconnected - Cross-reference links enable easy navigation between related nodes
✅ Developer Friendly - Scripts can be run locally for testing or manual updates
✅ Zero Maintenance - Fully automated workflow requires no manual intervention
Testing
The implementation has been tested with:
The full end-to-end workflow will be validated when the next release is published.
Files Changed
.github/workflows/generate-node-docs.yml(new).gitignore(updated - exclude generateddocs/nodes/directory)README.md(updated - added reference to Nodes Reference documentation)docs/08--Nodes-Reference.md(new - documentation index)scripts/README.md(new)scripts/fetch_nodes.py(new)scripts/generate_node_docs.py(new)Fixes #2034
Original prompt
Fixes #2034
💡 You can make Copilot smarter by setting up custom instructions, customizing its development environment and configuring Model Context Protocol (MCP) servers. Learn more Copilot coding agent tips in the docs.