Projects manager
This vscode extension allows to manage several Python projects in parallel, and seamlessly integrate the code of one or several projects into a larger project, as toolboxes. Virtual environments are also managed transparently.
Definitions
A project is simply a folder containing a .project.settings
JSON file. It can contain an abitrary amount of other files and subfolders:
project
├── .project.settings # Required
├── README.md # All the rest is optinonal
├── .git
│ ...
├── Files
│ ...
├── Figures
│ ...
├── Movies
│ ...
└── Programs
└── Python
├── myscript.py
├── ...
For convenience, on a machine all projects are gathered in a root folder, but can be organized in groups (subfolders). For instance:
projectRoot
├── Project 1
└── Group 1
├── Project 2
└── Project 3
Rapid control of the sources
Manually setting up the PYTHONPATH for each project is tedious, error-prone and does not fit well with project sharing. This extension allows rapid visualization and control of the available sources:
- The
Programs/Python
folder of the active project is automatically included into the available sources.
- The
Programs/Python
folders of other projects can also be included by defining these projects as external sources
.
- External sources of external sources are also recursively added to the sources, and appear as
dependencies
.

### Manage virtual environments
A virtual environment can be assigned to a project. This is done simply done via the python extension, like for any other folder.
Requirements
Currently this extension is only fully supported on Debian/Ubuntu.
This extension requires the python extension ms-python.python
and the live preview ms-vscode.live-server
.
To enable the creation of virtual environments, python3-venv
should be installed:
sudo apt install python3-venv
To build documentations, sphinx
and pydata-sphinx-theme
should be installed:
pip install sphinx pydata-sphinx-theme
Restart terminal.
pipx install pdoc
Extension installation
Install node.js
sudo apt update
sudo apt install nodejs npm
Set the "Python: Venv Path" parameter to:
/home/user/Science/Projects/.virtual_environments/
Extension Settings
This extension contributes the following settings:
projects.rootDir
: Folder path containing all the projects and projects folders.
Release Notes
To DO: * Direct import of git repositories into projects
1.0.0
- Complete new internal structure
- Better handling of virtual environment (incl. detection of changes)
- Introducing a simple documentation interface based on sphinx
0.1.0-5
- Interface to import git projects (
git clone
)
- Misc display improvements and bug fixes
0.0.1-5
- Improving README
- Adding extra features for settings management
- Updating extension icon
- Misc bug fixing
0.0.1
Initial release featuring:
- Source control
- Virtual environments
- Project creation