https://github.com/aiidateam/aiida-project

AiiDA project manager

https://github.com/aiidateam/aiida-project

Science Score: 26.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Committers with academic emails
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (14.7%) to scientific vocabulary

Keywords from Contributors

aiida quantum-espresso
Last synced: 11 months ago · JSON representation

Repository

AiiDA project manager

Basic Info
  • Host: GitHub
  • Owner: aiidateam
  • License: other
  • Language: Python
  • Default Branch: main
  • Homepage:
  • Size: 58.6 KB
Statistics
  • Stars: 4
  • Watchers: 1
  • Forks: 8
  • Open Issues: 17
  • Releases: 0
Created almost 8 years ago · Last pushed 11 months ago
Metadata Files
Readme Changelog License

README.md

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.| |---|

Installation

The package can be installed globally with pipx:

console pipx install aiida-project console installed package aiida-project 0.4.0, installed using Python 3.9.16 These apps are now globally available - aiida-project done! ✨ 🌟 ✨

See the pipx installation instructions if you haven't already installed pipx.

Usage

After installing aiida-project, run the init command to get started:

console aiida-project init ```console 👋 Hello there! Which shell are you using? bash/zsh/fish:

✨🚀 AiiDA-project has been initialised! 🚀✨

Info: For the changes to take effect, run the following command:

source /Users/mbercx/.zshrc

or simply open a new terminal. ```

This will also add the cda function to your shell startup file, so you can easily switch projects. Note that you'll have to source your e.g. .zshrc file for this function to be accessible!

create

After initialising, you can create new projects with their own virtual environment and project directory using the create command. The latest version of aiida-core will also be installed automatically, along with any plugins you specify with the --plugin option:

console aiida-project create firstproject --plugin aiida-quantumespresso console ✨ Creating the project directory and environment using the Python binary: /opt/homebrew/Cellar/python@3.11/3.11.3/Frameworks/Python.framework/Versions/3.11/bin/python3.11 🔧 Adding the AiiDA environment variables to the activate script. ✅ Success: Project created. 💾 Installing the latest release of the AiiDA core module. 💾 Installing `aiida-quantumespresso` from the PyPI.

You can then activate the project using the cda command described above:

console cda firstproject

Next to activating the Python virtual environment, this will also change the directory to the one for the project. aiida-project automatically sets up a directory structure, which we intend to be made configurable globally:

```console (firstproject) ~/project/firstproject$ tree -a . ├── .aiida │ ├── access │ ├── config.json │ └── daemon │ └── log ├── code └── setup ├── code ├── computer └── profile

9 directories, 1 file ```

Note: You may not have the tree command installed on your system.

destroy

Projects can be cleaned up by using aiida-project destroy. First deactivate the environment:

console deactivate firstproject

Next you can run the destroy command:

console aiida-project destroy firstproject console ❗️ Are you sure you want to delete the entire firstproject project? This cannot be undone! [y/N]: y Succes: Project with name firstproject has been destroyed.

This will remove both the virtual environment, as well as the whole project folder:

```console ~/project$ tree -a . └── .aiida_projects ├── conda └── virtualenv

3 directories, 0 files ```

Other features

virtualenvwrapper integration

If you are already using virtualenvwrapper, the virtual environments will be installed in the same directory as the one used by virtualenvwrapper (i.e. $WORKON_HOME). So you can then also use the

console aiida@prnmarvelsrv3:~$ workon firstproject

Environment configuration

Automatically sets some typical AiiDA UNIX environment variables, like AIIDA_PATH and the shell completion (bash/zsh for now, fish support coming soon!):

console $ echo $AIIDA_PATH /Users/mbercx/project/firstproject

Future goals

  • 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.

console (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:

```console (firstproject) aiida@prnmarvelsrv3:~/project/firstproject$ cd .. (firstproject) aiida@prnmarvelsrv3:~/project$ tree -a .aiidaprojects/ .aiidaprojects/ ├── conda └── virtualenv └── firstproject.json

2 directories, 1 file ```

Owner

  • Name: AiiDA team
  • Login: aiidateam
  • Kind: organization

The development team of AiiDA

GitHub Events

Total
  • Issues event: 2
  • Watch event: 2
  • Delete event: 1
  • Issue comment event: 2
  • Push event: 3
  • Pull request event: 2
  • Pull request review comment event: 4
  • Pull request review event: 6
  • Fork event: 1
  • Create event: 1
Last Year
  • Issues event: 2
  • Watch event: 2
  • Delete event: 1
  • Issue comment event: 2
  • Push event: 3
  • Pull request event: 2
  • Pull request review comment event: 4
  • Pull request review event: 6
  • Fork event: 1
  • Create event: 1

Committers

Last synced: over 1 year ago

All Time
  • Total Commits: 31
  • Total Committers: 3
  • Avg Commits per committer: 10.333
  • Development Distribution Score (DDS): 0.065
Past Year
  • Commits: 2
  • Committers: 2
  • Avg Commits per committer: 1.0
  • Development Distribution Score (DDS): 0.5
Top Committers
Name Email Commits
Marnik Bercx m****x@g****m 29
Jusong Yu j****u@g****m 1
DropD r****n@g****h 1
Committer Domains (Top 20 + Academic)
gmx.ch: 1

Issues and Pull Requests

Last synced: 11 months ago

All Time
  • Total issues: 17
  • Total pull requests: 11
  • Average time to close issues: 4 months
  • Average time to close pull requests: 3 months
  • Total issue authors: 3
  • Total pull request authors: 5
  • Average comments per issue: 0.88
  • Average comments per pull request: 0.82
  • Merged pull requests: 6
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 1
  • Pull requests: 1
  • Average time to close issues: N/A
  • Average time to close pull requests: N/A
  • Issue authors: 1
  • Pull request authors: 1
  • Average comments per issue: 1.0
  • Average comments per pull request: 0.0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • mbercx (8)
  • GeigerJ2 (5)
  • unkcpz (1)
Pull Request Authors
  • mbercx (8)
  • GeigerJ2 (4)
  • danielhollas (2)
  • unkcpz (2)
  • t-reents (1)
Top Labels
Issue Labels
Pull Request Labels

Packages

  • Total packages: 1
  • Total downloads:
    • pypi 140 last-month
  • Total dependent packages: 0
  • Total dependent repositories: 0
  • Total versions: 7
  • Total maintainers: 1
pypi.org: aiida-project

An AiiDA environment manager

  • Versions: 7
  • Dependent Packages: 0
  • Dependent Repositories: 0
  • Downloads: 140 Last month
Rankings
Dependent packages count: 7.1%
Forks count: 19.5%
Average: 22.8%
Dependent repos count: 32.0%
Stargazers count: 32.5%
Maintainers (1)
Last synced: 11 months ago

Dependencies

.github/workflows/cd.yml actions
  • actions/checkout v2 composite
  • actions/setup-python v2 composite
pyproject.toml pypi
  • click ~=8.1.2
  • py ~=1.11.0
  • pydantic ~=1.10.7
  • python-dotenv ~=1.0.0