olegalexander / lakos Goto Github PK
View Code? Open in Web Editor NEWVisualize Dart/Flutter library dependencies in Graphviz dot. Detect dependency cycles.
Home Page: https://pub.dev/packages/lakos
License: MIT License
Visualize Dart/Flutter library dependencies in Graphviz dot. Detect dependency cycles.
Home Page: https://pub.dev/packages/lakos
License: MIT License
I have no issue, I only appreciate the work.
Thank you :)
_x
included as part
should either be ignored or have the correct parent wouldn't it ?
When trying to execute lakos --metrics .
I recieve the error: RangeError (index): Invalid value: Valid value range is empty: 0
in my console. Unfortunately, there isn't anything else printed in the console.
Would be nice if lakos had an option to also quantify which files/projects are importing external dependencies
First of all: Thanks for this great tool!
One thing that I observed, when using import package:...
statements, those are not picked up by your tool, e.g.
import 'package:repository/domain_model/status.dart';
Cheers!
Running this on a fairly large codebase, the -m
option hangs for more than 15 minutes. As a comparison, a straightforward run of Lakos takes 0.75s
Hi, thank you for your work!
Would it be possible to create bigger rectangles for the most used classes? It would be useful to see god objects, or classes that need the most test coverage, etc.
Thanks
when converting to gml following the readme the gml seems to be invalid. At least gephi cannot parse it.
lakos.bat -o dot_images/metrics.dot -m ./lib/src | gv2gml -o dot_images/test.gml
Is it possible to ignore multiple folders?
For now I am able to ignore one folder:
lakos --metrics --no-tree -i lib/extensions/** . | dot -Tpng -o graph.png
This will ignore lib/extensions
but beside that I want to ignore another folder eg: tests
.
If this is not possible I believe it would be nice feature.
Thank you for this awesome package. It is exactly what I need in my current situation.
One thing which might increase the convenience of this package is the introduction of an include flag.
This could behave reversed to the ignore flag.
With ignore you have to list everything that you do not want to have included.
For very large code bases this ignore statement can thus get very long.
An inlude flag could solve this issue by taking the reverse approach and ony anayzing globs that fullfill the include statement.
lakos .
works as expected
lakos -i **/*.g.dart .
gives the error "no root directory found"
could this have to do with glob expansion in zsh
on macOS?
Edit: it looks like this works on zsh / macOS
lakos -i \*\*/\*.g.dart .
I think it can be a good add to allow displaying only repositories to avoid unreadable graph for big project.
Like specify the deepness we want.
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.