This Flox environment gives you Python 3.11 with better venv management and sane defaults. It's built for developers who want to skip the venv headaches and get to work.
- Painless virtual environment management
- Smart project initialization
- Dependency management that just works
- One-liner commands for common workflows
- Shell completion built in for bash, zsh, and fish
- No more fighting with your Python tooling
python3.11- Latest stable Python 3.11 releasepip- Package manager that doesn't get in your waygum- TUI components for smooth workflowszlib- Required dependency for many packages
- Flox installed
- Basic Python knowledge
git clone https://github.com/youruser/python-env && cd python-env
flox activate# Create a new virtual environment in current directory
mkvenv
# Find and activate any venv in current directory tree
aktivate
# Safely exit current virtual environment
qwit
# Create a fully-configured new project
mkprojekt# Install from requirements.txt with auto venv handling
pist
# Save currently installed packages to requirements.txt
freezereqs
# Check for outdated packages and update them
chkupdates# Run code quality checks (black, flake8, isort)
lint
# Smart-execute any Python file (or auto-find main.py)
run [file.py]This command:
- Creates a new directory with your project name
- Sets up a Python venv
- Asks which packages you need
- Creates a starter .gitignore
- Initializes git
- Gets you ready to code in seconds
All commands automatically find or create venvs as needed:
aktivatescans for any venv in your project treepistensures a venv exists before installing packagesrunactivates a venv before executing your code
Works the same way in:
- Bash
- Zsh
- Fish
Having issues? Try these:
-
Virtual environment not activating:
- Check that you have permissions for the directory
- Try
rm -rf .venvand create it again withmkvenv
-
Package installation fails:
- Try
pip install --upgrade pipin your venv - Check that required system libraries are available
- Try
-
Linting errors:
- Use
lint --fixto automatically fix common issues - Customize with
.flake8orpyproject.tomlin your project
- Use
Runs on:
- macOS (ARM/Intel)
- Linux (ARM/x86)
- Use
mkprojektwithfastapiordjangofor quick API/web projects - The
runcommand auto-detects common entry points likemain.py,app.py, andmanage.py - Add your commonly used packages to the
mkprojektselection menu by editing the manifest
Flox combines package and environment management, building on Nix. It gives you Nix with a git-like syntax and an intuitive UX:
- Declarative environments. Software packages, variables, services, etc. are defined in simple, human-readable TOML format;
- Content-addressed storage. Multiple versions of packages with conflicting dependencies can coexist in the same environment;
- Reproducibility. The same environment can be reused across development, CI, and production;
- Deterministic builds. The same inputs always produce identical outputs for a given architecture, regardless of when or where builds occur;
- World's largest collection of packages. Access to over 150,000 packages—and millions of package-version combinations—from Nixpkgs.