Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/orogene/orogene

Makes `node_modules/` happen. Fast. No fuss.
https://github.com/orogene/orogene

javascript nodejs package-manager rust typescript

Last synced: 3 days ago
JSON representation

Makes `node_modules/` happen. Fast. No fuss.

Awesome Lists containing this project

README

        



# orogene

> Makes `node_modules/` happen. Fast. No fuss.

[![release](https://img.shields.io/github/v/release/orogene/orogene?display_name=tag&include_prereleases)](https://github.com/orogene/orogene/releases/latest)
[![npm](https://img.shields.io/npm/v/oro)](https://www.npmjs.com/package/oro)
[![crates.io](https://img.shields.io/crates/v/orogene.svg)](https://crates.io/crates/orogene)
[![CI](https://img.shields.io/github/checks-status/orogene/orogene/main)](https://github.com/orogene/orogene/actions/workflows/ci.yml?query=branch%3Amain)
[![Project
Roadmap](https://img.shields.io/badge/Roadmap-Orogene%20v1.0-informational)](https://github.com/orgs/orogene/projects/2/views/1)
[![chat](https://img.shields.io/matrix/orogene:matrix.org?label=Matrix%20chat)](https://matrix.to/#/#orogene:matrix.org)

Orogene is a next-generation package manager for tools that use
`node_modules/`, such as bundlers, CLI tools, and Node.js-based
applications. It's fast, robust, and meant to be easily integrated into
your workflows such that you never have to worry about whether your
`node_modules/` is up to date. It even deduplicates your dependencies
using a central store, and improves the experience using Copy-on-Write on
supported filesystems, greatly reducing disk usage and speeding up
loading.

> *Note*: Orogene is still under heavy development and may not yet be
> suitable for production use. It is missing some features that you might
> expect. Check [the roadmap](https://github.com/orgs/orogene/projects/2)
> to see where we're headed and [talk to
> us](https://github.com/orogene/orogene/discussions/categories/pain-points)
> about what you want/need!.

### Getting Started

You can install Orogene in various ways:

npx:
```sh
$ npx oro ping
```

NPM:
```sh
$ npm install -g oro
```

Cargo:
```sh
$ cargo install orogene
```

Homebrew:
```sh
$ brew install orogene
```

You can also find install scripts, windows MSI installers, and archive
downloads in [the latest
release](https://github.com/orogene/orogene/releases/latest).

### Usage

For usage documentation, see [the Orogene
docs](https://orogene.dev/book/), or run `$ oro help`.

If you just want to do something similar to `$ npm install`, you can run
`$ oro apply` in your project and go from there.

### Performance

Orogene is very fast and uses significantly fewer resources than other
package managers, in both memory and disk space. It's able to install some
non-trivial projects in sub-second time:

![Warm cache comparison]

For details and more benchmarks, see [the benchmarks page].

### Contributing

For information and help on how to contribute to Orogene, please see [our
contribution guide].

### License

Orogene and all its sub-crates are licensed under the terms of the [Apache
2.0 License].

[Warm cache comparison]:
https://orogene.dev/assets/benchmarks-warm-cache.png
[the benchmarks page]: https://orogene.dev/BENCHMARKS
[our contribution guide]: https://orogene.dev/CONTRIBUTING/
[Apache 2.0 License]: https://github.com/orogene/orogene/blob/main/LICENSE