-
Notifications
You must be signed in to change notification settings - Fork 0
Add Mermaid diagram visualization for application graphs #4
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
- Created displayMermaid function to generate Mermaid diagrams from application graphs - Added --format flag to rad app graph command (text or mermaid) - Implemented color-coded nodes and different shapes for resource types - Added comprehensive unit tests for Mermaid generation - Created documentation with examples of the new visualization - All existing tests pass Co-authored-by: nicolejms <101607760+nicolejms@users.noreply.github.com>
- Created comprehensive how-to guide with examples - Included integration patterns for CI/CD - Documented visual design choices and supported formats Co-authored-by: nicolejms <101607760+nicolejms@users.noreply.github.com>
- Comprehensive overview of the GitHub-style graph visualization feature - Details on implementation, visual design, and technical approach - Test results and coverage metrics - Use cases and future enhancement ideas Co-authored-by: nicolejms <101607760+nicolejms@users.noreply.github.com>
- Real-world e-commerce application example - Comparison between text and Mermaid formats - Complex microservices architecture example - Practical use cases for documentation, onboarding, and reviews - CI/CD integration examples Co-authored-by: nicolejms <101607760+nicolejms@users.noreply.github.com>
|
@copilot update the app graph definition to include connection information such as ip address/port and location and version of the file from which the graph element is generated by |
I'd like to clarify what information should be included in the graph visualization. Currently, the Could you clarify:
Would you like me to:
|
|
@copilot 1. containers port configuration, 2. the location of the bicep file path, 3. the github file version of the recipe |
The requested information (container ports, Bicep file path, recipe version) exists in the resource properties but isn't currently exposed through the To add this information, we need backend API changes first: Backend Changes Needed (in
Alternative Approach:
Would you like me to:
The backend changes would require modifying the API contract, which may need design review from maintainers. |
Description
Enables GitHub-native visualization of Radius application graphs using Mermaid diagrams. The existing text format remains the default.
Implementation
--formatflag torad app graphcommand acceptingtext(default) ormermaiddisplayMermaid()function generates Mermaid TB graph syntax with:Usage
Example Output
graph TB app["Application: demo-app"] frontend["frontend<br/>containers"] backend["backend<br/>containers"] postgres[("postgres<br/>sqlDatabases")] frontend --> backend backend --> postgres classDef container fill:#e1f5ff,stroke:#0078d4,stroke-width:2px classDef datastore fill:#fff4ce,stroke:#d83b01,stroke-width:2pxType of change
Contributor checklist
Please verify that the PR meets the following requirements, where applicable:
Original prompt
✨ Let Copilot coding agent set things up for you — coding agent works faster and does higher quality work when set up for your repo.