auchenberg / dependo Goto Github PK
View Code? Open in Web Editor NEWVisualize your CommonJS or AMD module dependencies in a force directed graph report.
License: MIT License
Visualize your CommonJS or AMD module dependencies in a force directed graph report.
License: MIT License
I think it would be useful if dependo could highlight both incoming and outgoing links when hovering over a node. Right now it only highlights the outgoing links.
Maybe holding down different modifier keys (alt, ctrl) while hovering could hide one or the other sets.
Moving a node makes it stick in one place.
Maybe there's a way to store that information, JSON.stringify
and put in the local storage.
From there there's only one step to printing the string to console and allowing user to put it in a file which would be loaded and interpreted every time the graph is drawn, so you can have some of the graph nodes maintain order between browsers and machines (assuming the file goes to the repository as documentation)
Would it be possible to create a graph of cyclic dependencies?
I can do this in madge but it doesn't have the image capabilities.
I used the command: madge -c
Could you publish a new version of dependo corresponding to your master branch + pull requests?
dependo -f cjs server.js ./server/router.js
Would be interesting to have a tree view that shows dependencies from the chosen entry point as a tree from top to bottom, all arrows going downwards, and if a dependency imports th same module as already up higher in the tree then the graph just duplicates that dependency downward in the tree, and hovering on a dependency that is dupplicate (to see what imports it or what it imports) would highlight all instances of that node.
Hi,
I have a problem with outgoing links not highlighted, i found the issue with special characters in node. If any case the node having with special characters and spaces it never highlighting outgoing links. So can you please help me on this ASAP.
Thanks.!
Hi, I'm having trouble getting dependo to read my dependencies beyond the first file. I am passing in a require config file but I'm wondering primarily about the baseUrl. Should the path be relative to the config file, to the main application entry point or the current working directory? Or something else?
Any help appreciated, thanks :)
Hi,
I have a problem with outgoing links not highlighted, i found the issue with special characters in node. If any case the node having with special characters and spaces it never highlighting outgoing links. So can you please help me on this ASAP.
Thanks.!
I like straight lines to connect nodes more than the curved ones. This would be a nice option.
Hi! I have the same issue #15
Can you update madge dependencies again?
On my computer [email protected] not display dependency tree, and dependo not display connecctions between modules.
Latest release of Madge (3.0.0) working correctly.
Madge has solved dependency issue.
pahen/madge@f7e0ff8
Coud you upgrade Madge dependencies to inherit this fix?
Thank you.
on windows, dependency graph shows full absolute paths... i.e. c:/a/b/c/d. which causes extreme clutter. would be much nicer if the path was relative to the node application root. thanks.
class syntax is perhaps easy to analyze too, so it might be nice to also show a class inheritance graph. Possibly both can be shown at the same time with different color, or a toggle switch shows one while the other is greyed out, or similar.
Steps to reproduce:
In example.html, replace the source attribute of the script tag with:
https://cdnjs.cloudflare.com/ajax/libs/d3/3.5.5/d3.min.js
dependo is great to see what files a given file depends on, but it doesn't go any levels deeper to show what files those files depend on, and so on.
How can I specify the RequireJS config file on the command line? I've seen this requireConfig option in the API, but it's not mentioned as a command line option. I attempted the following
dependo -f amd --requireConfig subdir/Config.js . >dependencies.html
in the directory under which all source exists, but that had no effect in limiting the dependencies to those rooted in the Config.js file.
-JM
module.exports = JSON.parse(require('fs').readFileSync(__dirname + '/../package.json')).version;
Can also be done as:
module.exports = require('../package.json').version;
I apologize if this is something you've already added and I just haven't figured out yet, but the reason I never used any of the graphviz-based tools was that our project is heavily dependent on custom paths
mapped inside a require.config
call. Can dependo use such a file to resolve file mappings, or does it do it automatically assuming you've got the correct "entry point" script? Or is this too specific to requireJS AMD implementations?
So, instead of re-building, we can perhaps toggle a checkbox to show reverse arrows.
Hi guys,
cheers for this awesome tool. That's a nice start and I would like to see more things in the UI.
I like the D3 graph controls, however I would like to easily "disable" some nodes to visualise more easily my dependencies.
For instance: http://bl.ocks.org/gre/raw/8caa85c90b134f3c8852/ is the graph of my app,
but it is barely readable because basically everyone depends on "react" , "lodash" and "q". I don't want to statically remove those nodes because that's the truth, I just want to disable (delete/or grey out) from the UI a node and all its connection.
Thanks
Hi,
I try to use dependo to analyse my dependency graph.
I think I have understand that --deps of browserify build a json in module-deps format.
Is it currently the json format expected by dependo ? (seems don't)
I prefer to plug dependo on json output instead of the real code, because of browserify transformers applied on my source (babelify for es6 and jsx).
Thanks for any help.
A top sort (a tree-like layout) of the dependency graph would be helpful. This enhancement would help users understand how the modules are structured.
I say tree-like because,
Why might that be? The files are like this.
Can it show how many modules required by a module?
Hey there,
I've got an app I'd like to see the dependency tree for. The 'entry point' file is named App.js and the top of App.js looks like:
var React = require('react');
var Router = require('react-router'); // or var Router = ReactRouter; in browsers
var Route = Router.Route;
var RouteHandler = Router.RouteHandler;
var Link = Router.Link;
var Dashboard = require('./Dashboard.js');
var SequenceEditor = require('./SequenceEditor.js');
var Skeleton = require('./Skeleton.js');
etc.
Unfortunately, none of the dependencies are showing up for app.
I've run:
dependo -f cjs ./app/App.js > report.html
And:
dependo -f cjs ./app > report.html
I can't tell if there is a pattern of which require() statements it is picking up on and which it isn't. It seems a bit random to me: certain require statements get picked up in some files, but don't in others. Any help debugging this would be greatly appreciated. Thanks so much!
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.