"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.
๐ต Why WovenSnake?
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.
๐ฟ Installation
๐ Automatic (Recommended)
Linux / macOS:
|
Windows (PowerShell):
iwr -useb https://raw.githubusercontent.com/jackby03/wovensnake/main/scripts/install.ps1 | iex
๐ฆ From Source (Rustaceans)
๐ฎ How to Use
1. Start a New Pattern (init)
Prepares wovenpkg.json for your project.
2. Add a New Thread (add)
Adds a package from PyPI to your project and installs it immediately.
3. Knit Dependencies (install)
Reads your pattern, gathers materials, and weaves the environment.
4. Run in the Nest (run)
Execute any command within the context of your virtual environment.
5. Tidy Up (remove)
Gently removes a package and its unused threads.
6. View the Tapestry (list)
Admire the packages currently woven into your project.
7. Fresh Start (clean)
Clears the virtual environment and local packages. Use --all to clear the global cache too.
๐งธ Support the Nest
Building such a cozy tool takes care and patience. If WovenSnake brought you comfort, consider donating a warm coffee:
(Open Collective coming ssssoon...)
๐ค Contributing to the Nest
We welcome all serpents! Whether you're fixing a bug or adding a new fang. Check out CONTRIBUTING.md to get started.
๐ Licenssse
This project is licensed under the MIT License. Ssssee LICENSE for details.