dependency-cruiser
pnpm
dependency-cruiser | pnpm | |
---|---|---|
8 | 96 | |
4,965 | 27,802 | |
- | 1.6% | |
9.2 | 9.8 | |
21 days ago | 6 days ago | |
JavaScript | TypeScript | |
MIT License | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
dependency-cruiser
-
Taking Frontend Architecture Serious with dependency-cruiser
With dependency-cruiser, you can enforce which imports are allowed. This enables you to create an architecture fitness function that ensures your code continues to adhere to the initial design. You can also visualize your dependencies to gain a clearer understanding of your code's actual structure, allowing you to compare it with your mental model and make improvements where necessary.
-
Visualisation tool
something like https://github.com/sverweij/dependency-cruiser maybe https://github.com/pahen/madge or https://github.com/antoine-coulon/skott
-
[AskJS] What ESLint rules do you use to achieve better isolation of components?
I've personally fallen in love with Dependency Cruiser, which lets you set any arbitrary import rules you want on your repository. With it, you can enforce common things, like, "You can only import through the index file, if one exists", but you can also make custom-tailored rules for your specific project. For example, maybe your project is divided into three large folders - folder1 is allowed to import from folder2 and folder3, folder2 can import from folder3, and folder3 can not import from anyone else. Well, you can enforce that too, or whatever you need.
-
Best Practices for TypeScript Monorepo
Dependency Cruiser works great, can even render visuals:
https://github.com/sverweij/dependency-cruiser
NX[0] also has logic for handling this issue
[0]: https://nx.dev/
-
how to automatically run a script / yarn command before each dev hot-reload build
I have a dependency-cruiser script that enforces codebase import rules, which I want checked on each dev hot-reload build and prod build.
-
Deprank: Use PageRank to find the most important files in your codebase
Great project!
One feature request: Running the npx command searched only for the js files, not for the ts files. When I built deprank locally with yarn, it also showed the ts files. After looking at dependency-cruiser figure it has to do with what typescript compilers are available where.
It would be great if the npx command you provide in your readme would work regardless of my local setup - dependency-cruiser has documentation and one example of a suitable npx command here: https://github.com/sverweij/dependency-cruiser/blob/develop/...
My suggestion would be to check if any ts file is part of the extension option (i.e. --ext=".js,.jsx, .ts, .tsx") and only then do the magic needed to also show ts files.
-
How We Migrated from Javascript and Flow to TypeScript at Osome
The first step is to install dependency-cruiser.
-
Is it possible to generate a flow diagram from Javascript code?
You may have a look at dependency cruiser.
pnpm
-
Node package managers (npm, yarn, pnpm) - All you need to know
pnpm
-
Let’s build AI-tools with the help of AI and Typescript!
Pnpm for install Javascript/Typescript packages, like LangChain.js
- Pnpm 9
-
Understanding Dependencies in Programming
Node.js manages dependencies using package managers like npm (Node Package Manager), yarn, and pnpm. npm comes pre-installed with Node.js and allows you to install and uninstall Node.js packages. It uses a package.json file to keep track of which packages your project depends on. Yarn and Pnpm are alternative package managers that aim to improve on npm in various ways, such as improved performance and better lock file format.
-
Manage project dependencies correctly
Use pnpm - This is just one recommendation, but it's too big of a topic to discuss here.
- Bun 1.1
-
Using pnpm with the GitLab package registry in GitLab CI
In this blog post, I explain how to use pnpm in GitLab CI and how to authenticate with a private GitLab package registry.
-
Unit Testing in Node.js and TypeScript: A Comprehensive Guide with Jest Integration
A package manager such as npm, Yarn, or pnpm. A package manager is a tool that helps you manage the dependencies of your project. You can use any of these package managers to install Jest and other packages.
-
Understanding Redux: A Practical Guide to State Management
Installation: Install Redux and React-Redux using npm or yarn.(you can try pnpm too!)
-
Effective nodejs version management for the busy developer
I also recommend using pnpm as a package manager, it's faster and more efficient than npm or yarn with great capabilities concerning monorepo setup. On recent nodejs versions (v16.13+), you can install it easily with:
What are some alternatives?
emerge - Emerge is a browser-based interactive codebase and dependency visualization tool for many different programming languages. It supports some basic code quality and graph metrics and provides a simple and intuitive way to explore and analyze a codebase by using graph structures.
nx - Smart Monorepos · Fast CI
madge - Create graphs from your CommonJS, AMD or ES6 module dependencies
lerna - :dragon: Lerna is a fast, modern build system for managing and publishing multiple JavaScript/TypeScript packages from the same repository.
flow-to-ts - Convert flow code to typescript
berry - 📦🐈 Active development trunk for Yarn ⚒
ts-migrate - A tool to help migrate JavaScript code quickly and conveniently to TypeScript
yarn - The 1.x line is frozen - features and bugfixes now happen on https://github.com/yarnpkg/berry
react-border-wrapper - A wrapper for placing elements along div borders.
deno - A modern runtime for JavaScript and TypeScript.
vue-tsx-support - TSX (JSX for TypeScript) support library for Vue
npm