"Dependencies, neatly woven." 🐍🧶
WovenSnake is a cozy, high-performance Python package manager built with Rust. It knits your dependencies together securely, keeping your environment warm and tidy.
Managing packages shouldn't be a tangle. WovenSnake keeps things organized:
- ⚡ Swift Knitting: Parallel resolution and installation that finishes before your tea is ready.
- 🔒 Secure Stitching: Deterministic
wovenpkg.lockensures every install is identical. - 📦 Global Cache: Shared storage in
~/.wovensnake/cacheto avoid downloading the same package twice. - 🧶 Self-Mending: Automatically removes loose threads (unused packages) to keep your project clean.
- 🏠 Zero-Config Home: Creates virtual environments automatically, so your packages have a safe place to live.
Linux / macOS:
curl -fsSL https://raw.githubusercontent.com/jackby03/wovensnake/main/scripts/install.sh | shWindows (PowerShell):
iwr -useb https://raw.githubusercontent.com/jackby03/wovensnake/main/scripts/install.ps1 | iexcargo install --path .Prepares wovenpkg.json for your project.
woven initAdds a package from PyPI to your project and installs it immediately.
woven add requestsReads your pattern, gathers materials, and weaves the environment.
woven installExecute any command within the context of your virtual environment.
woven run python main.pyGently removes a package and its unused threads.
woven remove flaskAdmire the packages currently woven into your project.
woven listClears the virtual environment and local packages. Use --all to clear the global cache too.
woven cleanBuilding such a cozy tool takes care and patience. If WovenSnake brought you comfort, consider donating a warm coffee:
(Open Collective coming ssssoon...)
We welcome all serpents! Whether you're fixing a bug or adding a new fang. Check out CONTRIBUTING.md to get started.
This project is licensed under the MIT License. Ssssee LICENSE for details.
