dmgress / cloudgrapher Goto Github PK
View Code? Open in Web Editor NEWOne page visualization tool for AWS CloudFormation scripts
Home Page: http://dmgress.github.io/cloudgrapher/
License: MIT License
One page visualization tool for AWS CloudFormation scripts
Home Page: http://dmgress.github.io/cloudgrapher/
License: MIT License
The switch to cytoscape 2.5 caused some changes in provided layout extensions and how to include new ones. I had to remove:
Maybe they're still useful? Or perhaps some others are nice too?
The buttons in the button bar don't have titles or tooltips when you hover over them. Adding a title attribute to each list item will fix this.
When an invalid template is loaded the graph area should:
The current setup of a single static page has several limitations. By switching the codebase to a Node application it will be possible to proxy through it's own back-end and use non-browser capabilities through API calls in the future.
After switching to grid layout and editing the template, the graph gets redrawn with the cose layout.
The preferred option is to use the currently selected layout, the alternative to update the layout selector.
The template dependents on .getDoc
, which is too much detail. It shouldn't have to know more than a simple get and set of the current value.
When the template has been modified in the editor and the user leaves or loads another template, then a confirmation dialog becomes visible
It should be possible to embed a generated graph through the use of several query parameters. The parameter embed
indicates it should only show a cytoscape graph or rendered png image.
By default it will use a predefined graph type, style and dimension.
Parameters required for:
A CloudFormation Stack can contain other stacks. These might be reachable for further exploration.
From issue #3 it is clear that some functionality eventually will need some server-side code.
Currently undefined resources are not rendered. Rendering "the web" or external predefined resources might improve insight in how well access to those is defined in the CloudFormation script.
By delaying the rendering of the graph when editing, the application will look less pushy.
It's not immediately clear you can drop templates on the graph area and editor. A small description might help.
This can either be a help button or a hint section.
If a file is dropped on or otherwise loaded from the file system, the field for loading remote templates is filled.
In several presentations security groups are represented as rectangles around resources (mostly EC2 resources).
By rendering them as rectangles and rendering explicit security group rules as special edges graphs will be clearer to read.
It would be nice to have several styles to choose from. The chosen style will affect the cytoscape elements (borders, text, etc.) and might influence the icons used.
Given an URL the application should load the document and visualize the template if it's a valid CloudFormation template.
The application will use the query parameter CFTemplateURL
to open a remote template.
Depends on #3.
console.log
When the template is unmodified and loaded from a remote location the page should display a link that allows to embed the graph with the current configuration.
The edit.js
currently holds the template "class", it should be extracted to it's own file and some tests need to be written.
The current design is very basic and unappealing. Selecting fonts and applying styling will improve the appeal of the interface.
Currently each nodes & edges collecting function defines how it wants to model a new edge. The specs are matched to the collecting function, but should only test the edge finding function.
![Collecting function calls findEdges which calls the addEdge defined in the collecting function](http://g.gravizo.com/g?
digraph G {
collecting_function [label="Collecting function"];
edge_model [label="Edge model",shape="box",style=filled,color="gray"];
collecting_function -> addEdge [label="creates",style="dotted"];
addEdge -> edge_model [label="defines",style=dashed];
collecting_function -> findEdges [label="calls"];
findEdges -> addEdge [label="calls"];
})
To Do:
It should be possible to click through from the graph to the relevant section in the editor.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.