Introducing
The Slant team built an AI & it’s awesome
Find the best product instantly
Add to Chrome
Add to Edge
Add to Firefox
Add to Opera
Add to Brave
Add to Safari
Try it now
4.7 star rating
0
What is the best alternative to Jam?
Ad
Ad
Volo
All
6
Experiences
Pros
5
Cons
1
Top
Pro
Automatically converts files to AMD for you
Volo is based around AMD, which is great for asynchronous loading, and if you try to add a non-AMD package, it will interactively ask you for its dependencies and exports.
See More
Top
Con
Does not store components in a registry
Volo installs components directly from urls and repositories, which makes it more susceptible to components being taken down, with fewer guarantees about their availability.
See More
Top
Pro
Provides command endpoints for task management
Volo also allows you to provide a volofile that lets you run various tasks. Volo provides a helper object for running cross platform command line commands, and also allows you to use binaries in node_modules or create your own.
See More
Top
Pro
Quickly bootstrap your project with templates
Volo has a create command that can copy template projects from GitHub, so you can get set up quickly.
See More
Top
Pro
Allows for extensible commands
Sometimes you might require some additional commands, other than the ones Volo provides; Volo has you covered in these cases as well. The package manager is extremely extensible at its core, and can be easily modified and extended.
See More
Top
Pro
Loads packages directly from Github
If any project exists on Github, that means you can use it along with Volo in your frontend projects.
See More
Hide
Get it
here
2
0
Yarn
All
12
Experiences
Pros
11
Cons
1
Top
Pro
The same results will be yielded every time yarn is run in a repository
One of the most important aspects of Yarn is determinism (predictability). The lock file ensures that the same dependencies will always be installed in the same way and order regardless of the machine for a given repository.
See More
Top
Con
Takes up disk space
Yarn adds to your disk space usage since it stores dependencies locally.
See More
Top
Pro
Can tell you why a package was installed
yarn why <query> can tell you why a package was installed and what other packages depend on it.
See More
Top
Pro
Good network performance
Yarn efficiently queues up requests and avoids request waterfalls in order to maximize network utilization.
See More
Top
Pro
Offline mode
If you've installed a package before, you can install it again without any internet connection.
See More
Top
Pro
Flat Mode
Resolve mismatching versions of dependencies to a single version to avoid creating duplicates.
See More
Top
Pro
Multiple registries
Install any package from either npm or Bower and keep your package workflow the same.
See More
Top
Pro
Network resilience
A single request failing won't cause an install to fail. Requests are retried upon failure.
See More
Top
Pro
Good documentation
It looks like it has good documentation.
See More
Top
Pro
Security is put at the forefront
Even though it's still in its early stages of development, security is one of the core values on which Yarn is built. It uses checksums to verify the integrity of every package before executing its code. This also helps avoiding errors related to faulty caching or captive portals. Further steps are also being taken to improve the security of Yarn which will be implemented in the future.
See More
Top
Pro
Built by the community for the community
Even though it's backed by Facebook, Yarn is built as a community project first and foremost. It's completely open source and hosted on Github. It's released under a standard open source client and has its own GitHub organization and set up to work under the same governance model that other successful projects have used in the past, such as Rust and Ember. All of this means that both existing and new contributors will always work together to improve the product and introduce new features while also keeping in mind suggestions coming from the community.
See More
Top
Pro
Backed by Facebook and Google
Was created in a collaboration of Facebook with Exponent, Google and Tilde.
See More
Hide
See All
Experiences
FREE
53
8
Webpack
All
11
Experiences
Pros
9
Cons
2
Top
Pro
Rich and flexible plugin infrastructure
Plugins and loaders are easy to write and allow you to control each step of the build, from loading and compiling CoffeeScript, LESS and JADE files to smart post processing and asset manifest building.
See More
Top
Con
Config file may be hard to understand 
Due to a somewhat hard to grasp syntax, configuring Webpack may take some time.
See More
Top
Pro
Tap into npm's huge module ecosystem
Using Webpack opens you up to npm, that has over 80k modules of which a great amount work both client-side and server-side. And the list is growing rapidly.
See More
Top
Con
Can not load files discovered during runtime
See More
Top
Pro
Can create a single bundle or multiple chunks loaded on demand, to reduce initial loading time
Webpack allows you to split your codebase into multiple chunks. Chunks are loaded on demand. This reduces the initial loading time.
See More
Top
Pro
Supports source maps for easier debugging
Source maps allow for easier debugging, because they allow you to find the problems within the origin files instead of the output file.
See More
Top
Pro
ES6 module support
Webpack supports ES6 modules and their import and export methods without having to compile them to CommonJS require
See More
Top
Pro
Share the same modules client-side and server-side
Because Webpack allows you to use the same require() function as node.js, you can easily share modules between the client-side and server-side.
See More
Top
Pro
Bundles CommonJs and AMD modules (even combined)
Webpack supports AMD and CommonJS module styles. It performs clever static analysis on the AST of your code. It even has an evaluation engine to evaluate simple expressions. This allows you to support most existing libraries.
See More
Top
Pro
Mix ES6 AMD and CommonJS
Webpack supports using all three module types, even in the same file.
See More
Top
Pro
Limit plugin integration issues
See More
Hide
See All
Experiences
Get it
here
107
17
JSPM
All
14
Experiences
Pros
9
Cons
5
Top
Pro
Registry agnostic
JSPM is registry agnostic, it can pull packages from npm and github and is built in such a way it can support more.
See More
Top
Con
You need to be an expert to write shims
You can load any module. But that comes with the price: you need to find or write configs to load a particular rare module.
See More
Top
Pro
Module style agnostic
Loads ES6, AMD, CommonJS and globals.
See More
Top
Con
Doesn't hide complexity
JSPM doesn't try to hide complexity from the user. I.e. when some issue emerges you need understand a lot to be able to patch it or create a workaround.
See More
Top
Pro
Can transcompile ES6, JSX and Typescript
See More
Top
Con
Watcher has bugs
Watching would benefit from improvements
See More
Top
Pro
Much faster than Webpack or Browserify
While Webpack and Browserify recompile the source code using Babel, jspm is the only packager that can load prebuild/minified code downloaded from the npm registry.
See More
Top
Con
Unstable API
0.17 is still in beta. 0.16 is lacking features.
See More
Top
Pro
Bundled based on imported modules without any config
Create the bundle file without config and add only the modules imported.
See More
Top
Con
Poor bundler performance
Bundling performance is slow, though offset by the fact that bundling is not required during development, since it can load dependencies asynchronously.
See More
Top
Pro
Switch between async or sync load
With a simple command you could change between load the modules async by systemjs or sync with a bundle file.
See More
Top
Pro
Easy install packages from npm, github or any git repository
See More
Top
Pro
Versioned package urls
It creates a packages folders which are versioned. This makes it future proof for a time where we stop bundling all the code. In the following presentation Guy Bedford calls bundling an anti-pattern.
See More
Top
Pro
Very easy to start with
See More
Hide
See All
Experiences
Get it
here
39
8
Ninja
All
4
Experiences
Pros
2
Cons
1
Specs
Top
Pro
Simple set up
Once dependencies like maven are installed it is up and running in minutes with one simple command.
See More
Top
Con
Little user choice in organization
Since most of the code and folder structure are automatically generated, this leaves little room to the developer on how they will organize their project.
See More
Top
Pro
Easy horizontal scaling
Ninja is stateless by design. This makes horizontal scaling very easy and just a matter of adding servers.
See More
Specs
Platforms:
Windows, Linux, Mac
Hide
Get it
here
52
3
Waf
All
7
Experiences
Pros
5
Cons
2
Top
Con
Obfuscated documentation
See More
Top
Pro
Written in Python
You don't have to learn a domain specific syntax. If you know Python, it's a breeze.
See More
Top
Con
Non-standard Python
See More
Top
Pro
File changes are tracked based on a hash of their changes not the time stamp
This means that switching branches in git isn't a big deal.
See More
Top
Pro
Very fast
Much faster than its predecessor SCons.
See More
Top
Pro
Fairly easy to extend
See More
Top
Pro
Very simple graph based API
See More
Hide
See All
Experiences
Get it
here
9
1
Cake
All
4
Experiences
Pros
2
Cons
1
Specs
Top
Pro
Tools support
Standard support for MSBuild, MSTest, xUnit, NUnit, NuGet, ILMerge, WiX and SignTool.
See More
Top
Con
No GUI
Everything is script based, there is no graphical front end.
See More
Top
Pro
Cross platform
Windows, Linux and macOS versions available.
See More
Specs
Platforms:
Windows, Linux, Mac
Technology:
C#
Hide
Free
2
0
NPM
All
15
Experiences
Pros
7
Cons
7
Specs
Top
Pro
Compatible with any CLI 
NPM is compatible with any CLI the developer wants to use.
See More
Top
Con
Custom tasks require additional keyword 'run'
Only a few standard tasks support being executed without the run keyword (e.g., npm start vs npm run customtask)
See More
Top
Pro
Plenty of helpful NPM modules/plugins
NPM has a strong community that has developed plenty of libraries and plugins that are useful to developers.
See More
Top
Con
Not a build system, only a task runner
It is supposed to be used for running gulp, webpack or whatever. But it is not supposed to be used as a build system.
See More
Top
Pro
Very concise configuration
NPM scripts require fewer lines of code to run a given task. This is true even when it's for running build processes. Using Unix pipes lots of tasks can be reduced to one-liners.
See More
Top
Con
Passing parameters is awkward
In order to pass additional parameters to npm you must add them after -- (e.g., npm run build -- --custom='foo').
See More
Top
Pro
Does not need any wrapper modules
With other task runners, you need to install wrapper modules for tools you may already have installed. When using NPM that's not necessary, to use the tools you need, just install them directly through NPM.
See More
Top
Con
Badly documented
Less than bare minimum official documentation leaves users in the dark without taking often expensive external courses. Even the --help text has unpluggable gaps. One official source notes the documentation isn't adequate yet nothing has been done to fix this.
See More
Top
Pro
Part of node.js distribution
See More
Top
Con
Lot of issues with authentication and random node problems
Unable to recover from common depencies conflicts consistantly. Error messages are not always helpful to debugging. Doesn't account well for users with different versions of node.
See More
Top
Pro
You're most likely using NPM already
See More
Top
Con
Does not run well with Windows
Since a lot of projects that use NPM as a build tool most of the time make use of Bash scripts as well. This means that open source projects that run the command npm run may run into issues when used in a Windows environment.
See More
Top
Pro
Uncomplicated package management system
When it works...
See More
Top
Con
Doesn't allow you to create build process with complicated logic on its own
In complex heterogeneous app you will quickly migrate to gulp, webpack or whatever leaving to NPM only simple task running responsibility.
See More
Specs
Number of Plugins:
100.000+
Task instruction style:
Configuration
Processing method:
Pipeline
Hide
See All
Experiences
Get it
here
58
7
Gradle
All
11
Experiences
Pros
10
Cons
1
Top
Con
Can get slow for large builds
Since Gradle uses Groovy instead of XML for it's configuration scripts, it achieves a great deal of flexibility but unfortunately that comes with slower builds when the project gets large enough. This is because the entire Groovy script has to be recompiled for every build instead of simply being parsed.
See More
Top
Pro
Official Android Studio build tool
Android Studio's build system is an Android plugin for Gradle. What's more is that the Android Gradle plugin can be installed and run even on machines that don't have Android Studio, which enables you to build Android apps everywhere (for example continuous integration servers).
See More
Top
Pro
Lots of plugins available
Gradle has hundreds of open source plugins available. This is extremely helpful for users who want to speed up their development.
See More
Top
Pro
Dependency programming tool
Gradle is a dependency programming tool first and foremost. Gradle will make sure that all declared dependencies are properly executed for every random task that you execute in your setup. The code can be spread across many directories in any kind of file layout.
See More
Top
Pro
Short scripts
Since Gradle does not use XML but it uses it's own DSL based on Groovy, Gradle scripts tend to be shorter than other build tools that use XML. Boilerplate code is also considerably small because it's DSL is designed to solve a specific problem: moving the software through its lifecycle starting from compilation into static analysis and testing, packaging and finally deployment.
See More
Top
Pro
Integrates with Maven
Gradle can deploy to remote Maven repositories or even install to your local Maven repo.
See More
Top
Pro
Built for continuous delivery
Gradle can be easily integrated with Jenkins to create a continuous delivery pipeline for any Java application.
See More
Top
Pro
IDEA integration
Gradle has full integration with Jetbrains IDEA. IDEA understands multi-module Gradle builds and automatically maintains the IDEA modules within the project. You also have the option to run unit tests with either the built-in JUnit/TestNG test runner, or delegate running the test to Gradle using the same visualization as the built-in runner.
See More
Top
Pro
Integration with Ant
Gradle integrates perfectly with Ant. Giving developers a lot of Ant's flexibility. You can run individual Ant tasks on Gradle or even entire Ant builds.
See More
Top
Pro
Convention over configuration
Gradle follows the convention over configuration paradigm in order to make it easier for developers by having already made a number of decisions out of the box.
See More
Top
Pro
Eclipse integration
Gradle has full integration with Eclipse through developer tools and plugins.
See More
Hide
See All
Experiences
Get it
here
46
8
GNU Make
All
5
Experiences
Pros
3
Cons
1
Specs
Top
Pro
Uses the full power of the UNIX shell
Make takes advantage of the powerful UNIX shell, using it at it's full potential. STDIN and STDOUT are especially useful because of their versatility.
See More
Top
Con
Doesn't run on Windows by default
Make requires Cygwin/msys2/MinGW to run on Windows.
See More
Top
Pro
No need for wrapper modules
Other build tools need wrapper modules to do certain tasks. The biggest disadvantage of these wrapper modules is that they bind you to a version of that tool. With Make you don't have that problem, there's no need for wrappers and no tools to bind you to a version, you can use any version of Make that you want.
See More
Top
Pro
Works with more than just node.js
Since it's written in C and can be found in all UNIX-based systems it can be used on platforms other than node.js.
See More
Specs
Platforms:
Unix, Linux, Windows, Mac
Hide
Get it
here
56
13
Bazel
All
11
Experiences
Pros
9
Cons
2
Top
Pro
Correct and repeatable builds
Builds only use input files that are explicitly declared in the build specification. On Linux, Bazel runs tools in a sandboxed environment that contain only the minimum necessary files required.
See More
Top
Con
Draconian sandboxing, explicit inputs requirement
Requirement to explicitly name all inputs disqualifies Bazel for many workflows, e.g. those relying on tools that scan a directory tree themselves looking for files to process. Sandboxing as implemented in Bazel imposes further restrictions. If a command is successful when you type it in the shell, it should also be successful when pasted verbatim into a rule, but with Bazel it very often isn't.
See More
Top
Pro
Fast even at scale
Even at large scale it's pretty fast (it's based on what Google uses internally for their huge code base).
See More
Top
Con
Confusing for beginners
With so many capabilities, trying to implement with a simple project is overkill and unpleasant.
See More
Top
Pro
Can rule shell commands
See More
Top
Pro
Handles mixed language builds
See More
Top
Pro
High level build descriptions
See More
Top
Pro
Build rule errors are informative
When builds fail because of an issue in the build rules, the errors provided are usually very informative and helpful to resolve the issue.
See More
Top
Pro
Good IDE support
See More
Top
Pro
Standard protocol for remote execution and caching
See More
Top
Pro
Remote execution of commands
See More
Hide
See All
Experiences
Get it
here
18
6
Tup
All
8
Experiences
Pros
5
Cons
2
Specs
Top
Pro
Speed
It is very fast.
See More
Top
Con
Variants not working on Windows
The solution for having different build configuration (think Release/Debug) is broken on Windows.
See More
Top
Pro
Tidy
It will automatically clean-up old files.
See More
Top
Con
Cannot incrementally modify or delete files
Cannot incrementally modify files (e.g. LaTeX PDF, VISing and LIGHTing Quake maps, which takes the same BSP file as input and output), and will not delete files (e.g. rm build/*.o).
See More
Top
Pro
General
Not bound to C/C++.
See More
Top
Pro
Lua
Tup supports writing build definitions using Lua or Tupfiles.
See More
Top
Pro
Cross platform
Supports Linux, OSX, and Windows.
See More
Specs
Platforms:
Windows, Linux, Mac
Hide
See All
Experiences
Get it
here
11
4
Please
All
4
Experiences
Pros
3
Cons
1
Top
Pro
Cross-platform
Linux, macOS, FreeBSD.
See More
Top
Con
No support for Android or iOS yet
See More
Top
Pro
Intuitive syntax and workflow
Much simpler than multi-tier build systems, like Make and Ninja.
See More
Top
Pro
Code Completion
Works with many IDEs, including Visual Studio Code.
See More
Hide
Free
2
1
Autotools
All
7
Experiences
Pros
4
Cons
3
Top
Con
Perl
Autoconf is dependent on Perl.
See More
Top
Pro
Based on standard tools
It's a standard tool built over standard tools.
See More
Top
Con
Autotools is far too complicated
It seems to add far too much complexity to projects. The build system has a tendency to be more complex than the actual projects that it's being used to build.
See More
Top
Pro
Ubiquitous
It's a well established build system that is ubiquitous in the open source world.
See More
Top
Con
Poor documentation
In spite of its many years of existence, the available documentation leaves much to be desired.
See More
Top
Pro
make distcheck
Build your project, run the tests, create a release tarball, unpack it with read-only sources, build it and run the tests. This should be the minimum standard for every build system, yet it seems hard to reach.
See More
Top
Pro
Basic API for building anything: ./configure; make
The skills you learn for building one language still work when you build something else, even down to creating books for print from emacs org-mode.
See More
Hide
See All
Experiences
Get it
here
3
6
Built By the Slant team
Find the best product instantly.
4.7 star rating
Add to Chrome
Add to Edge
Add to Firefox
Add to Opera
Add to Brave
Add to Safari
Try it now - it's free
{}
undefined
url next
price drop