Skip to content

mertcanaltin/pacquet

 
 

Repository files navigation

pacquet

Experimental package manager for node.js written in rust.

TODO

  • .npmrc support (for supported features readme.md)
  • CLI commands (for supported features readme.md)
  • Content addressable file store support
  • Shrink-file support in sync with pnpm-lock.yml
    • Frozen lockfile
    • Update outdated lockfile
    • Creating lockfile
  • Workspace support
  • Full sync with pnpm error codes
  • Generate a node_modules/.bin folder
  • Add CLI report

Debugging

TRACE=pacquet_tarball just cli add fastify

Testing

# Install necessary dependencies
just install

# Start a mocked registry server (optional)
just registry-mock launch

# Run test
just test

Benchmarking

Install between multiple revisions

First, you to start a local registry server, such as verdaccio:

verdaccio

Then, you can use the script named integrated-benchmark to run the various benchmark, For example:

# Comparing the branch you're working on against main
just integrated-benchmark --scenario=frozen-lockfile my-branch main
# Comparing current commit against the previous commit
just integrated-benchmark --scenario=frozen-lockfile HEAD HEAD~
# Comparing pacquet of current commit against pnpm
just integrated-benchmark --scenario=frozen-lockfile --with-pnpm HEAD
# Comparing pacquet of current commit, pacquet of main, and pnpm against each other
just integrated-benchmark --scenario=frozen-lockfile --with-pnpm HEAD main
# See more options
just integrated-benchmark --help

About

experimental package manager for node.js

Resources

License

Apache-2.0, MIT licenses found

Licenses found

Apache-2.0
LICENSE-APACHE
MIT
LICENSE-MIT

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Rust 97.3%
  • JavaScript 1.7%
  • Other 1.0%