No, I'm not talking about npm v7! 🙀
A new package manager is under development and it's not written in JavaScript.
The Orogene team is working on «a next-generation platform and package manager for Node.js-compatible and frontend JavaScript projects!»
Who is behind this?
Just 3 cool devs with Kat Matchán included!
And what do we know about Kat? Well, they were working for npm some time ago, and were a member of the team who released the major improvements to npm v6 after the Yarn 🧶 release. So, Kat knows about caching and how to improve the package system.
Yarn was a rough competitor in that time, 🥵 many of us switched to yarn and now we're back into npm.
Kat works for Microsoft's NuGet nowadays.
Why is orogene built using Rust?
Rust 🦀 is a powerful language: thread-safe and memory safe without using a garbage collector. We can expect better speed than that of a statically typed language with a performance similar to C++.
A benchmark here:
What about the node_modules?
Orogene removes the necessity for the node_modules
folder using a similar approach to pnpm
.
You can use this in wrapper shell too:
Where is the package.json?
It seems the JSON format is too strict for some people. It's a bit scary to think about leaving the package.json
behind to embrace a new format for defining dependencies in Orogene. Even-though this hasn't been confirmed, the team is considering it.
Is there a create command?
We can expect the standard commands in Orogene, like create:
Kat Marchán 🍑🍑🍑@zkat__00:07 AM - 09 Aug 2020
The rm -rf
won't be needed when create-react-app
accepts oro
as a known package manager.
A healthy community
Kat Marchán 🍑🍑🍑@zkat__Anyway, if you manage a community, the only way I've thought of around this is to just take a strong stand as a community leader and ban missing stairs proactively, because it's YOUR community, and you don't want innocent folks scared away by these types01:50 AM - 16 Aug 2020
Kat wants to build a collaborative and healthy community around this project where each member can express their ideas in a safe and free environment.
When Orogene will be available?
There is no company behind this, just FOSS enthusiasts working in their free time. Kat said we can expect a beta coming for March 2021. We can see this project growing in public in their repository and help with ideas and feature requests.
Any open source project is welcome and we've the best wishes for this team! And if this comes alive, npm, yarn and other package managers could find improvement opportunities.
Top comments (24)
I'll back anything to compete with Microsoft-owned products right now. Their monopoly on the development process is getting scary.
Well, Kat works for Microsoft...
SNEAK: 100
I'm not thrilled that they're planning on ditching the package.json format.
This seems like it would only fragment the ecosystem
It seems that devs should always be learning again
So there will be 3 rivals: deno, npm and now this oro.
Deno is a rival to node. Oro is a rival to npm, pnpm and yarn
Okay, so deno is a engine to run js not the package manager. Got it! I thought deno was doing everything including package managing.
There's no separate package manager with deno because it automatically pulls dependencies from urls in your code. It's a different approach, there's no need for a package.json and therefore no need for a package manager.
Yeah, time saving and helpful, right?
Oro should include this caching method.
Time saving. Not sure. You still have to find the correct URL just like searching for the correct package on npm
As far as I know, we only need to type
htrps://deno.land/packagename.ts
And that's it.
Only for packages in the "standard library" for Deno. Everything else are git URLs.
Unless they publish it on
npm
I am not going to use it because I hate having to manually download something from a website and open an app.They will be an npm of curated urls
So what will this do that pnpm doesn't already?
Being nourished in the rust...?
More choice is always a good thing.
Unless a team of dev comes along dveeloping standards and another develops some different standards. That's where confusions stem from.
well hello there
Another interesting Rust project. Finally this language gets more and more into the mainstream :-)
Having to see and use a package system of one language in another makes me sad. Since you're telling me I'm using a slow language :(
See it this way, JavaScript is a high level language, thus it provides you with most tools to get your project up and running with ease (If you are using JavaScript 11 or Deno at least XD), but it also requires a sacrifice in your end, that is performance (even though JavaScript is pretty damn fast compared to most languages).
You usually develop this solutions in low-level languages, so you as a user don't have to worry about this kind of stuff. More work from the devs, better perks for you
I was expecting for it to be called DPM 😂😂