In most npm clients, like npm and pnpm, dependencies are the core of it - packages have dependencies, and they have scripts.
Npax thinks differently. In Npax, scripts are the core of everything. Individual scripts can depend on specific packages, and they can depend on other scripts.
Npax will eventually be extended to be a replacement for npm, nvm, pip, python-venv, cargo, rustup, and that odd folder full of bash scripts.
🟢 Done
🟡 In progress
🔴 Not started
- 🟢 Project initialization
- 🟢 Scripts
- 🟡 Scripts that depend on packages
- 🟡 Scripts that depend on other scripts
- 🔴 Offline usage/cacheing
- 🔴 Export/compile npax.toml files to package.json files
- 🔴 Import/convert package.json files to npax.toml files
- 🔴 Scaffholding/degit-like command
- 🔴 Modules
- 🔴 Subpackages/monorepo system
- 🔴 Scripts that depend on scripts of subpackages
- 🔴 Concurrency/threading
- 🔴 Global dependencies/npx-like command
- 🔴 Node version management
- 🔴 Python/Pypi support
- 🔴 Rust/Crates.io support
- 🔴 Python version management
- 🔴 Rust version management without using rustup
- 🔴 Rust/Crates.io compilation without using cargo
The heart of npax is the npax.toml file, where scripts are stored.
TODO: write more here