Skip to main content

🧙‍♂️ EnvWizard

Smart environment setup tool for Python projects - One command to create virtual environments, install dependencies, and configure .env files intelligently.

PyPI version Python Support License: MIT Tests Coverage Security

✨ Features

  • 🔍 Auto-Detection - Automatically detects Django, FastAPI, Flask, and 20+ frameworks
  • 🎯 Smart .env Generation - Creates comprehensive .env files with framework-specific variables
  • 🐍 Virtual Environment Management - Creates and manages venvs with specific Python versions
  • 📦 Dependency Installation - Auto-installs from requirements.txt, pyproject.toml, or Pipfile
  • 🎨 Beautiful CLI - Rich terminal output with colors and progress indicators
  • 🔒 Secure by Default - Input validation, path protection, secure file permissions
  • 🚀 Cross-Platform - Works on Linux, macOS, and Windows
  • ⚡ Fast - Saves 95% of setup time (15-30 min → 30 seconds)

📦 Installation

pip install envwizard

🚀 Quick Start

Initialize a New Project

# Navigate to your project directory
cd my-django-project

# Run envwizard
envwizard init

# That's it! ✨

EnvWizard will:

  1. Detect your frameworks (Django, PostgreSQL, etc.)
  2. Create a virtual environment
  3. Install all dependencies
  4. Generate .env and .env.example files
  5. Add .env to .gitignore

Usage Examples

Detect Project Type

envwizard detect

Create Virtual Environment Only

envwizard create-venv --name venv --python-version 3.11

Generate .env Files Only

envwizard create-dotenv

Custom Setup

# Skip dependency installation
envwizard init --no-install

# Skip .env generation
envwizard init --no-dotenv

# Custom virtual environment name
envwizard init --venv-name myenv

# Specific Python version
envwizard init --python-version 3.11

📋 Supported Frameworks

EnvWizard automatically detects and configures:

Web Frameworks

  • Django
  • FastAPI
  • Flask
  • Streamlit

Databases

  • PostgreSQL
  • MySQL
  • MongoDB
  • Redis
  • SQLite

Tools & Libraries

  • Celery (Task queues)
  • SQLAlchemy (ORM)
  • Pandas (Data analysis)
  • NumPy (Scientific computing)
  • Pytest (Testing)

📖 CLI Commands

envwizard init

Complete project setup - creates venv, installs deps, generates .env

Options:

  • --path, -p - Project directory (default: current)
  • --venv-name, -n - Virtual environment name (default: venv)
  • --python-version - Python version (e.g., 3.11)
  • --yes, -y - Skip confirmation prompts (for CI/CD automation)
  • --no-install - Skip dependency installation
  • --no-dotenv - Skip .env generation

envwizard detect

Analyze project and show detected frameworks

envwizard create-venv

Create virtual environment only

envwizard create-dotenv

Generate .env files only

envwizard --version

Show version information

envwizard --help

Show help message

💡 Use Cases

Starting a New Project

mkdir my-fastapi-app
cd my-fastapi-app
echo "fastapi>=0.100.0" > requirements.txt
envwizard init

Joining an Existing Project

git clone https://github.com/username/django-project.git
cd django-project
envwizard init

🔒 Security Features

  • ✅ Input Validation - All inputs sanitized to prevent command injection
  • ✅ Path Protection - Prevents path traversal to system directories
  • ✅ Secure Permissions - .env files created with 0600 (owner-only)
  • ✅ Auto .gitignore - Automatically adds .env to .gitignore
  • ✅ No Secret Storage - Generates placeholder values only

📊 Performance

Task Manual EnvWizard Time Saved
Create venv 30s Auto 30s
Install deps 1-2 min Auto 60-120s
Create .env 5-10 min Auto 5-10 min
Research variables 5-15 min Auto 5-15 min
Total 14-31 min ~30s 95% faster

🤝 Contributing

Contributions are welcome!

git clone https://github.com/0xV8/envwizard.git
cd envwizard
pip install -e ".[dev]"
pytest tests/

📝 Requirements

  • Python 3.9+
  • pip
  • Git (optional)

📄 License

MIT License - see LICENSE file for details

📧 Support


Save hours of setup time. Focus on building great applications.

pip install envwizard and get started in seconds! 🚀

Release files for envwizard 0.2.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for envwizard 0.2.1
File Size Uploaded
envwizard-0.2.1.tar.gz 32.3 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for envwizard 0.2.1
File Interpreter ABI Platform
envwizard-0.2.1-py3-none-any.whl Python 3 none any Details

Total release size: 57.8 kB

Release files / envwizard-0.2.1.tar.gz

Download URL envwizard-0.2.1.tar.gz
Size 32.3 kB
Tags Source
SHA-256 checksum
How to use checksums
8a2c9fee25f7945494862a7a99759d4db74e16c7b528f44879273e35f5768e35
BLAKE2b-256 checksum
How to use checksums
27a7af7fd05ee82947cc3ede66b885ff68ae1e5c079f7cefd59b4fbab3b24aa2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.10.0

Release files / envwizard-0.2.1-py3-none-any.whl

Download URL envwizard-0.2.1-py3-none-any.whl
Size 25.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
d282d831b426e619a1099934cfac294432b050bc8616897ae614bce3963f5c54
BLAKE2b-256 checksum
How to use checksums
294a094eff9112b8583fb83f2d299071779771eb34d9b1ce19b256050522ba87
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.10.0

Release history Release notifications | RSS feed

This release

0.2.1 This release

2 release files

0.2.0

1 release file

0.1.0

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page