An AiiDA environment manager
Project description
AiiDA-Project
Tool for managing AiiDA "projects" - Python environments tailored to AiiDA with separated project directories.
❗️ This package is still in the early stages of development and we will most likely break the API regularly in new 0.X versions. Be sure to pin the version when installing this package in scripts. |
---|
Usage
- Easy to install globally via
pipx
:
aiida@prnmarvelsrv3:~$ pipx install aiida-project
installed package aiida-project 0.3.0, Python 3.8.10
These binaries are now globally available
- aiida-project
done! ✨ 🌟 ✨
- Create projects with their own virtual environment, and immediately install
aiida-core
and the plugins you need:
aiida@prnmarvelsrv3:~$ aiida-project create firstproject --plugins aiida-quantumespresso
✨ Creating the project environment and directory.
🔧 Adding the AiiDA environment variables to the activate script.
✅ Success! Project created.
💾 Installing the latest release of the AiiDA core module.
💾 Installing aiida-quantumespresso
- Supports virtualenv for now, integrated with virtualenvwrapper (
conda
/mamba
support coming soon!):
aiida@prnmarvelsrv3:~$ workon firstproject
- Automatically sets some typical AiiDA UNIX environment variables, like AIIDA_PATH and the shell completion (bash for now,
zsh
/fish
support coming soon!):
(firstproject) aiida@prnmarvelsrv3:~$ cd $AIIDA_PATH
- Automatically sets up a well-organised directory structure, which can be configured globally:
(firstproject) aiida@prnmarvelsrv3:~/project/firstproject$ tree -a
.
├── .aiida
│ ├── access
│ ├── config.json
│ └── daemon
│ └── log
├── code
└── setup
├── code
├── computer
└── profile
9 directories, 1 file
- For now it just installs AiiDA and plugins, but in the future we want it to be able to also automatically set up the AiiDA database, repository and default profile.
(firstproject) aiida@prnmarvelsrv3:~/project/firstproject$ verdi status
✔ version: AiiDA v2.3.0
✔ config: /home/aiida/project/firstproject/.aiida
⏺ profile: no profile configured yet
Report: Configure a profile by running `verdi quicksetup` or `verdi setup`.
- Projects are pydantic data models, and are stored as JSON in the .aiida_projects directory. Over time it should be possible to completely regenerate a project based on this file, but that’s still a work in progress:
(firstproject) aiida@prnmarvelsrv3:~/project/firstproject$ cd ..
(firstproject) aiida@prnmarvelsrv3:~/project$ tree -a .aiida_projects/
.aiida_projects/
├── conda
└── virtualenv
└── firstproject.json
2 directories, 1 file
- Projects can be cleaned up by using
aiida-project destroy
:
(firstproject) aiida@prnmarvelsrv3:~/project$ aiida-project destroy firstproject
Are you sure you want to delete the entire firstproject project? This cannot be undone! [y/N]: y
(firstproject) aiida@prnmarvelsrv3:~/project$ tree -a
.
└── .aiida_projects
├── conda
└── virtualenv
3 directories, 0 files
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
No source distribution files available for this release.See tutorial on generating distribution archives.
Built Distribution
File details
Details for the file aiida_project-0.4.0-py3-none-any.whl
.
File metadata
- Download URL: aiida_project-0.4.0-py3-none-any.whl
- Upload date:
- Size: 10.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: python-requests/2.30.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 00e8a234017a552f78a7d9d3bf5f2202205353d5c65fbd07ca6802bfdfaaae12 |
|
MD5 | 60d38efff705923206eb9d6214948367 |
|
BLAKE2b-256 | ed7c434347a37d61a3f27d55af272b4b0653549c33fa8fe1fcd8ef107bdd5524 |