All Projects → ipmjs → Ipmjs

ipmjs / Ipmjs

Immutable Package Manager

Projects that are alternatives of or similar to Ipmjs

Immudb
immudb - world’s fastest immutable database, built on a zero trust model
Stars: ✭ 3,743 (+1859.69%)
Mutual labels:  immutable, immutability
Immutable Tuple
Immutable finite list objects with constant-time equality testing (===) and no memory leaks.
Stars: ✭ 29 (-84.82%)
Mutual labels:  immutable, immutability
Pearl
Pearl is a lightweight package manager for automating reproducible environments between different systems (Linux and OSX). It can be used for dotfiles, plugins, programs and any form of code accessible via git.
Stars: ✭ 166 (-13.09%)
Mutual labels:  package-manager
Pond
Immutable timeseries data structures built with Typescript
Stars: ✭ 180 (-5.76%)
Mutual labels:  immutable
Extcore
An extended core library for F#.
Stars: ✭ 172 (-9.95%)
Mutual labels:  immutable
Ied
📦 Like npm, but faster - an alternative package manager for Node
Stars: ✭ 1,973 (+932.98%)
Mutual labels:  package-manager
Immutadot
immutadot is a JavaScript library to deal with nested immutable structures.
Stars: ✭ 173 (-9.42%)
Mutual labels:  immutable
Immutableassign
Lightweight immutable helper that allows you to continue working with POJO (Plain Old JavaScript Object)
Stars: ✭ 161 (-15.71%)
Mutual labels:  immutable
Tink
a dependency unwinder for javascript
Stars: ✭ 2,176 (+1039.27%)
Mutual labels:  package-manager
Vcpkg
C++ Library Manager for Windows, Linux, and MacOS
Stars: ✭ 14,449 (+7464.92%)
Mutual labels:  package-manager
Docker
Composer in Docker
Stars: ✭ 180 (-5.76%)
Mutual labels:  package-manager
Chaos
The Chaos Programming Language
Stars: ✭ 171 (-10.47%)
Mutual labels:  immutability
Bolt
⚡️ Super-powered JavaScript project management
Stars: ✭ 2,134 (+1017.28%)
Mutual labels:  package-manager
Luarocks
LuaRocks is the package manager for the Lua programming language.
Stars: ✭ 2,324 (+1116.75%)
Mutual labels:  package-manager
Zef
Raku / Perl6 Module Management
Stars: ✭ 166 (-13.09%)
Mutual labels:  package-manager
Python Lenses
A python lens library for manipulating deeply nested immutable structures
Stars: ✭ 179 (-6.28%)
Mutual labels:  immutable
Xrepo
🗂️ A cross-platform C/C++ package manager based on Xmake
Stars: ✭ 162 (-15.18%)
Mutual labels:  package-manager
Spack
A flexible package manager that supports multiple versions, configurations, platforms, and compilers.
Stars: ✭ 2,425 (+1169.63%)
Mutual labels:  package-manager
Elba
A package manager for Idris
Stars: ✭ 173 (-9.42%)
Mutual labels:  package-manager
Boss
Dependency Manager for Delphi
Stars: ✭ 188 (-1.57%)
Mutual labels:  package-manager

What's this?

This is an open initiative to make sure this won't happen again. We think that immutability is a good way forward, but we need to reach some kind of consensus in the community. Please let us know what you think. Send PRs here, add issues, send tweets. Let's solve this.

Join the conversation

The easiest way to join is on Gitter: Join the chat at https://gitter.im/ipmjs/ipmjs

Opening issues and PRs here is also welcome!

Motivation

Azer rightfully rage-quited when kik decided to send their lawyers and claim ownership of his package name 'kik', which he refused. kik then contacted npm which then revoked Azers ownership. derp.

Azer replied by deleting all of his ~250 npm packages which according to npm, resulted in hundreds of broken builds every second worldwide. double-derp.

What is the problem?

Node.js is dependent on npm to be functional, since the majority of web developers use it to manage dependencies in their projects. npm is also a for-profit company which could be a problem since it might make decisions (like this) that might not be in its own community's best interest.

How could we solve this?

Create an open-sourced alternative to npm, make it immutable, meaning that if a package is published, it will be available for all its dependents til the end of times. This would solve the issues that npm has right now, that a package could be published one second to be unpublished the next.

Here is a wish list for ipm:

  • A CLI (npm install ipm-cli -g to enable easy migration)
  • Immutable packages
  • Require legit licenses
  • Verifiable packages
  • More robust user authentication
  • No more soft dependencies (>= 1.0.3 etc)
  • 100% implemented on open-sourced frameworks and libraries
  • Decentralized hosting?

I want a fix now, how could npm be fixed today?!

Ask npm to make their stuff immutable, an npm install today should have the same result as npm install next year.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].