Skip to main content

Meowda 🐱 —— 「喵哒」 Manage multiple Python virtual environments with ease

Project description

Meowda 🐱 —— 「喵哒」

Meowda is a modern Python virtual environment management tool that lets you easily manage multiple Python virtual environments. Built on uv, it provides a conda-like CLI interface (but is not a conda replacement or compatible with conda) focused on simple and fast virtual environment management.

✨ Features

  • 🚀 Fast: Lightning-fast package management powered by uv
  • 🎯 Simple: Intuitive conda-like command line interface
  • 🔄 Flexible: Support for both global and project-level environment management
  • 🔗 Project Linking: Associate projects with specific environments
  • 🛠️ VS Code Integration: Seamless integration into development workflow
  • 📦 Lightweight: Written in Rust for excellent performance

📦 Installation

Prerequisites

Make sure you have uv installed. See the official installation guide for detailed instructions.

Install Meowda

Using uv (Recommended)

uv tool install meowda

Using Cargo

cargo install meowda

🚀 Quick Start

1. Initialize Shell

# For zsh users
meowda init ~/.zshrc
source ~/.zshrc

# For bash users
meowda init ~/.bashrc
source ~/.bashrc

2. Basic Usage

# Create and use a virtual environment
$ meowda create my-project -p 3.12
Using CPython 3.12.11
Creating virtual environment with seed packages at: /Users/user/.local/share/meowda/venvs/my-project
 + pip==25.2
Activate with: source /Users/user/.local/share/meowda/venvs/my-project/bin/activate
Virtual environment 'my-project' created successfully.

$ meowda activate my-project
$ meowda install requests pandas
$ meowda deactivate

# List and manage environments
$ meowda env list
Available global virtual environments:
  my-project (/Users/user/.local/share/meowda/venvs/my-project python 3.12.11)

$ meowda env dir
/Users/user/.local/share/meowda/venvs

$ meowda remove my-project
Virtual environment 'my-project' removed successfully.

💡 Advanced Features

Global vs Local Environments

# Global environments (accessible anywhere)
$ meowda create --global tools -p 3.12
$ meowda activate --global tools

# Local environments (project-specific, stored in .meowda/venvs/)
$ meowda create --local myproject -p 3.11
Using CPython 3.11.13
Creating virtual environment with seed packages at: .meowda/venvs/myproject
 + pip==25.2 + setuptools==80.9.0 + wheel==0.45.1
Virtual environment 'myproject' created successfully.

$ meowda env dir --local
/path/to/project/.meowda/venvs

Development Workflow Example

$ mkdir awesome-app && cd awesome-app
$ meowda create --local awesome-app -p 3.12
$ meowda activate --local awesome-app
$ meowda install fastapi uvicorn pytest sqlalchemy
$ meowda deactivate

Advanced Options

# Recreate environment (clear existing packages)
$ meowda create my-env -p 3.12 --clear

# Install specific versions or from requirements
$ meowda install "django>=4.0,<5.0" "pytest==7.4.0"
$ meowda install -r requirements.txt

# Project linking
$ meowda link my-web-app /path/to/web-project
$ meowda unlink my-web-app

🔌 VS Code Integration

Add to your settings.json:

{
   "python.venvFolders": [".meowda/venvs", "~/.local/share/meowda/venvs"]
}

📖 Command Reference

Environment Management

  • meowda create <name> -p <version> - Create environment
  • meowda activate <name> - Activate environment
  • meowda deactivate - Deactivate current environment
  • meowda remove <name> - Remove environment
  • meowda env list - List all environments
  • meowda env dir - Show storage directory

Package Management

  • meowda install <packages> - Install packages
  • meowda uninstall <packages> - Uninstall packages

Options: --global, --local, --clear

🤔 FAQ

Q: Why was Meowda created?

A: Meowda bridges the gap between conda's convenience and uv's speed. While conda is great for managing environments across projects, it can be heavy. While uv is blazingly fast, managing multiple environments with it can be cumbersome. Meowda combines the best of both worlds by providing a conda-like interface powered by uv's performance.

Q: What's the difference between Meowda and conda?

A: Meowda focuses specifically on Python virtual environment management and provides faster package installation through uv. It's not a complete conda replacement, but rather a lightweight alternative.

Q: Global vs local environments?

A: Global environments are stored in ~/.local/share/meowda/venvs and accessible anywhere. Local environments are stored in project's .meowda/venvs/ and only available within that project.

🙏 Acknowledgement

  • uv - For the virtual environment management core functionality
  • conda - For the inspiration of the CLI interface design

Like Meowda? Give us a ⭐️!

Made with 🐱 by ShigureLab

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

meowda-0.1.6.tar.gz (23.4 kB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

meowda-0.1.6-py3-none-win_amd64.whl (321.7 kB view details)

Uploaded Python 3Windows x86-64

meowda-0.1.6-py3-none-win32.whl (310.3 kB view details)

Uploaded Python 3Windows x86

meowda-0.1.6-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (494.8 kB view details)

Uploaded Python 3manylinux: glibc 2.17+ x86-64

meowda-0.1.6-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl (504.2 kB view details)

Uploaded Python 3manylinux: glibc 2.17+ s390x

meowda-0.1.6-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (529.8 kB view details)

Uploaded Python 3manylinux: glibc 2.17+ ppc64le

meowda-0.1.6-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl (522.0 kB view details)

Uploaded Python 3manylinux: glibc 2.17+ i686

meowda-0.1.6-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (491.2 kB view details)

Uploaded Python 3manylinux: glibc 2.17+ ARMv7l

meowda-0.1.6-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (514.4 kB view details)

Uploaded Python 3manylinux: glibc 2.17+ ARM64

meowda-0.1.6-py3-none-macosx_11_0_arm64.whl (436.1 kB view details)

Uploaded Python 3macOS 11.0+ ARM64

meowda-0.1.6-py3-none-macosx_10_12_x86_64.whl (438.6 kB view details)

Uploaded Python 3macOS 10.12+ x86-64

File details

Details for the file meowda-0.1.6.tar.gz.

File metadata

  • Download URL: meowda-0.1.6.tar.gz
  • Upload date:
  • Size: 23.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for meowda-0.1.6.tar.gz
Algorithm Hash digest
SHA256 45005c4f422c9a6c97a639c08b3fd4b610c9669f842da0570fb3913f6c681eba
MD5 f0bd17bc794f47e02d79fe9a492b0b69
BLAKE2b-256 72c954a8c669ae51aa344221b09e6befe074c33985d41bd5b03e99c66cdf3a5f

See more details on using hashes here.

Provenance

The following attestation bundles were made for meowda-0.1.6.tar.gz:

Publisher: build-and-release.yml on ShigureLab/meowda

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file meowda-0.1.6-py3-none-win_amd64.whl.

File metadata

  • Download URL: meowda-0.1.6-py3-none-win_amd64.whl
  • Upload date:
  • Size: 321.7 kB
  • Tags: Python 3, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for meowda-0.1.6-py3-none-win_amd64.whl
Algorithm Hash digest
SHA256 cdea8aaeb6d84b185f0c2ab0d03267dd1bc71e68b10a47605394823aa6a3f1c7
MD5 6d0e8efedbbd2f98e3e2ee577ee1f834
BLAKE2b-256 c44465edff7ebde7d0779b96a320f60ea72c34e911a4bdf79ceb0ed7ecbe9bcd

See more details on using hashes here.

Provenance

The following attestation bundles were made for meowda-0.1.6-py3-none-win_amd64.whl:

Publisher: build-and-release.yml on ShigureLab/meowda

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file meowda-0.1.6-py3-none-win32.whl.

File metadata

  • Download URL: meowda-0.1.6-py3-none-win32.whl
  • Upload date:
  • Size: 310.3 kB
  • Tags: Python 3, Windows x86
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for meowda-0.1.6-py3-none-win32.whl
Algorithm Hash digest
SHA256 0f889e475c1d1627ea9c768b539905d81af6b1f3a5ea2037a84996e16ae9cc23
MD5 ea38ddac441ddf755c548cfbc8199524
BLAKE2b-256 f939f730a3d676811e0a1cd1507c4bca5eb7163f627e3212c6e0b757f6ac1c62

See more details on using hashes here.

Provenance

The following attestation bundles were made for meowda-0.1.6-py3-none-win32.whl:

Publisher: build-and-release.yml on ShigureLab/meowda

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file meowda-0.1.6-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for meowda-0.1.6-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 bb23f2fa546a9f0af2534c48562ab0687ec67e8e64191ea03165dd20efc3af13
MD5 e74f272b4c9dcf5c6ee4975106a102d9
BLAKE2b-256 703121e769a58b0bb5adcf75763338dd80faf97be755ea2d8d4e04e0191a26f3

See more details on using hashes here.

Provenance

The following attestation bundles were made for meowda-0.1.6-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: build-and-release.yml on ShigureLab/meowda

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file meowda-0.1.6-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl.

File metadata

File hashes

Hashes for meowda-0.1.6-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl
Algorithm Hash digest
SHA256 7efad430d1ba1ac188db87c32be3bf52dee67bb0f868f68992abbb03dd5bfd54
MD5 b492074122a0020e274ca39f4e7b1969
BLAKE2b-256 38427df2924de4a85262db455ab584aaeece51ae73f61b20ee1315df3c808fb9

See more details on using hashes here.

Provenance

The following attestation bundles were made for meowda-0.1.6-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl:

Publisher: build-and-release.yml on ShigureLab/meowda

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file meowda-0.1.6-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl.

File metadata

File hashes

Hashes for meowda-0.1.6-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Algorithm Hash digest
SHA256 fa820caaafea3da9adcd43db9c8edc6235b32a7e4912fa6d8efaafce17221532
MD5 a14f6724c84863329f60534ecd610f71
BLAKE2b-256 21069768755ddba79428625113e9800da35644a6e7f576c2d59f7723d00d1496

See more details on using hashes here.

Provenance

The following attestation bundles were made for meowda-0.1.6-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl:

Publisher: build-and-release.yml on ShigureLab/meowda

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file meowda-0.1.6-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for meowda-0.1.6-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 335d9c99af7f72b4b980913eec60fcc4435cc2a8d5b2bc056f64452597c765c7
MD5 d29a079261137dbfedc8fd0341c0e544
BLAKE2b-256 17700389d68793c5873cbe84a08272e40348ac255858ccee082efaf3442e6d95

See more details on using hashes here.

Provenance

The following attestation bundles were made for meowda-0.1.6-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl:

Publisher: build-and-release.yml on ShigureLab/meowda

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file meowda-0.1.6-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl.

File metadata

File hashes

Hashes for meowda-0.1.6-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 9b0b1c798ee8a9c8580ce5de91dc0e4023a9e243dccd3624510959a9783ab8de
MD5 b44d89c1281f24cd2c3a7b0b2c5a649a
BLAKE2b-256 b2501bd9d437d27aa50a345d212b0e43c18863c09b52b75689d50ccc61836121

See more details on using hashes here.

Provenance

The following attestation bundles were made for meowda-0.1.6-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl:

Publisher: build-and-release.yml on ShigureLab/meowda

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file meowda-0.1.6-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for meowda-0.1.6-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 780842d8e4d0697e4cc88b5b8377429a06c4095da754aa074c865608317bc001
MD5 1caf3e2ac8f7726d597be7e2a423fc92
BLAKE2b-256 836911f83beeb3ffe72bf1987d243aad50aa820545d8d3a690f89944bc5985d7

See more details on using hashes here.

Provenance

The following attestation bundles were made for meowda-0.1.6-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: build-and-release.yml on ShigureLab/meowda

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file meowda-0.1.6-py3-none-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for meowda-0.1.6-py3-none-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 c331797dfc8f19e36731138d0c6e8e9cf6bfd72e3ebaa32fa7a1034080667b02
MD5 de5ed539ff37d7586ee57b061e47861c
BLAKE2b-256 90c8251a5dccbbd3ea8db42643b7e6cc8cac80b1922153e787eb4f2f4cb3708c

See more details on using hashes here.

Provenance

The following attestation bundles were made for meowda-0.1.6-py3-none-macosx_11_0_arm64.whl:

Publisher: build-and-release.yml on ShigureLab/meowda

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file meowda-0.1.6-py3-none-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for meowda-0.1.6-py3-none-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 1d0c64495e5a6ec023d224231ba7a04d74a2f2044a6f05526cf53d9650ef8c79
MD5 63c0fd71d8a12353333ec950ab284e2f
BLAKE2b-256 65e32e307de606e312b4e92e913478c29ecc24c7871e2e8c9194c791b40d1d6e

See more details on using hashes here.

Provenance

The following attestation bundles were made for meowda-0.1.6-py3-none-macosx_10_12_x86_64.whl:

Publisher: build-and-release.yml on ShigureLab/meowda

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page