Juno is a desktop application designed to simplify the management of Python virtual environments for JupyterLab. This tool helps you create, manage, and remove virtual environments that are registered as Jupyter kernels, making it easier to work with multiple Python environments within JupyterLab.
-
Create Virtual Environments: Easily create new Python virtual environments and automatically register them as Jupyter kernels.
-
Manage Existing Environments: View details about all environments created with Juno.
-
Install Packages: Add new packages to existing environments directly from the interface.
-
Export Requirements: Generate and save requirements.txt files from your environments.
-
Remove Environments: Unregister Jupyter kernels and remove virtual environments when no longer needed.
-
Customizable Storage: Configure the directory where virtual environments are stored.
- Python 3.7 or later
- PyQt5
- Jupyter (for registering kernels)
- ipykernel
-
Clone the repository:
git clone https://github.com/yourusername/juno.git cd juno -
Install dependencies:
pip install -r requirements.txt
-
(Optional) Set the Virtual Environments Directory: By default, Juno stores virtual environments in
~/.jupyter_venvs. To change this, set theJUNO_VENV_DIRenvironment variable:export JUNO_VENV_DIR=/path/to/your/venv_directory
-
Run the Application:
From the command line, run:
python main.py
-
Using the Interface:
-
Create a New Environment: Enter a name for your environment, optionally specify additional packages, and click "Create Environment".
-
View & Remove Environments: Select an environment from the list to view its details, then use the "Remove" button to delete it if needed.
-
Install Packages: Choose an environment, enter package names separated by commas, and click "Install Packages".
-
Export Requirements: Generate a requirements.txt file from any environment, which can be saved to your filesystem.
-
Settings: Change the base directory where environments are stored.
-
-
Use in JupyterLab: After creating environments with Juno, they will appear in JupyterLab's kernel selection menu when starting a new notebook or changing kernels.
-
Kernel Registration: Juno handles the registration of environments with JupyterLab by running the
ipykernel installcommand automatically. -
Permissions: Ensure your user has the necessary permissions to create directories, execute Python commands, and write to the kernelspec directory used by Jupyter.
-
Python Version: Environments are created using the Python version that is running Juno.
- Missing Jupyter: Make sure Jupyter is installed in your system Python environment.
- Permission Issues: Ensure you have write permissions to the environments directory.
- Kernel Not Showing: Restart JupyterLab after creating a new environment if it doesn't appear immediately.
This project is licensed under the MIT License.