Skip to content

jackby03/wovensnake

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

201 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
WovenSnake Cozy Logo

๐Ÿงถ WovenSnake

Crates.io Documentation CI Status License Ko-Fi ACS compatible

"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.lock ensures every install is identical.
  • ๐Ÿ“ฆ Global Cache: Shared storage in ~/.wovensnake/cache to avoid downloading the same package twice.
  • ๐ŸŒ Truly Cross-Platform: Native binaries for macOS (arm64 & x86_64), Linux, and Windows โ€” no Rosetta 2 penalty on Apple Silicon.
  • ๐Ÿงถ 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.

๐Ÿ’ป Platform Support

Operating System Architecture Status
macOS Apple Silicon (arm64) โœ… Supported
macOS Intel (x86_64) โœ… Supported
Linux x86_64 โœ… Supported
Linux aarch64 โœ… Supported
Windows x86_64 โœ… Supported

๐Ÿ’ฟ Installation

๐Ÿš€ Automatic (Recommended)

macOS / Linux:

curl -fsSL https://raw.githubusercontent.com/jackby03/wovensnake/main/scripts/install.sh | bash

The installer auto-detects your architecture (arm64 or x86_64), downloads the right binary, and optionally adds woven to your PATH. Pass --yes to skip all prompts.

Windows (PowerShell):

iwr -useb https://raw.githubusercontent.com/jackby03/wovensnake/main/scripts/install.ps1 | iex

๐Ÿ“ฆ Pre-built Binaries

Download the binary for your platform from the latest release:

Platform Binary
macOS (Apple Silicon) woven-macos-arm64
macOS (Intel) woven-macos-amd64
Linux (x86_64) woven-linux-amd64
Windows (x86_64) woven-windows-amd64.exe

๐Ÿฆ€ From Source (Rustaceans)

cargo install --path .

โ™ป๏ธ Updating

Re-run the installer โ€” it will overwrite the existing binary:

curl -fsSL https://raw.githubusercontent.com/jackby03/wovensnake/main/scripts/install.sh | bash

๐Ÿ—‘๏ธ Uninstalling

macOS / Linux โ€” run the uninstall script (works even if woven is broken or not in PATH):

curl -fsSL https://raw.githubusercontent.com/jackby03/wovensnake/main/scripts/uninstall.sh | bash

Or if woven is already working:

woven self-uninstall

Both options remove the binary, the global cache (~/.wovensnake), and clean the PATH entry from your shell rc files. Add --yes to skip the confirmation prompt.


๐ŸŽฎ How to Use

1. Start a New Pattern (init)

Prepares wovenpkg.json for your project.

woven init

2. Knit Dependencies (install)

Install all dependencies from wovenpkg.json, or add and install specific packages in one step:

woven install                    # install everything in wovenpkg.json
woven install requests           # add requests and install
woven install requests flask     # add multiple packages
woven install flask==3.0.0       # add a specific version

3. Run in the Nest (run)

Execute any command within the context of your virtual environment.

woven run python main.py

4. Tidy Up (remove)

Gently removes a package and its unused threads.

woven remove flask

5. View the Tapestry (list)

Admire the packages currently woven into your project.

woven list

6. Fresh Start (clean)

Clears the virtual environment and local packages. Use --all to clear the global cache too.

woven clean

๐Ÿงธ Support the Nest

Building such a cozy tool takes care and patience. If WovenSnake brought you comfort, consider supporting:

Ko-fi BAT


๐Ÿค Contributing to the Nest

We follow a Trunk-Based Development workflow with strict CI verification. Check out CONTRIBUTING.md to get started.

๐Ÿ“œ Licenssse

This project is licensed under the MIT License. Ssssee LICENSE for details.

About

WovenSnake is a modern Python package manager designed to streamline dependency management by weaving packages and their relationships into an organized, optimized ecosystem.

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Packages

 
 
 

Contributors