This repository contains the source of the official registry of AiiDA plugins.
If you are starting to develop a new plugin (e.g. using the AiiDA plugin cutter) or if you already have one, please register it here. We strongly encourage to register at early stages of development, since this both "reserves" the name of your plugin and informs the developer community of your ongoing work.
By default, the list of plugins is now sorted by the latest release, so plugins that are under active development automatically bubble up to the top. The release date is determined by the date of the latest PyPI release. Plugins not released to PyPI will have no release date.
plugins.yaml
file, e.g.
...
aiida-new:
entry_point_prefix: new
plugin_info: https://raw.github.com/aiidateam/aiida-new/master/setup.json
code_home: https://github.com/aiidateam/aiida-new
documentation_url: http://aiida-new.readthedocs.io/
The name under which your plugin will be distributed.
By convention, names of AiiDA plugins are lowercase and prefixed by aiida-
.
Examples:
aiida-quantumespresso
aiida-gaussian-datatypes
The prefix of all entry points provided by the plugin.
By convention, a plugin aiida-xxx
should use entry_point_prefix: xxx
.
Example: aiida-quantumespresso
uses the entry point prefix quantumespresso
and provides numerous entry points, all of which start with quantumespresso.
.
The link to the homepage of the plugin, for example its github repository.
beta
and higher)A URL or PyPI package name for installing the most recent version of the package through pip
.
Examples:
pip_url: aiida-quantumespresso
for a package that is registered on PyPIpip_url: git+https://github.com/aiidateam/aiida-wannier90
for a package not registered on PyPIstable
)URL pointing to a JSON file containing the keyword arguments passed to the setuptools.setup
function when installing your package.
For an example, see the setup.json
file of the aiida-diff demo plugin.
The link to the online documentation for your plugin, for example on readthedocs.org .
Use this to point to a Python module that contains a __version__
variable with the version of your plugin.
Useful for flit
and setuptools
configuration files that use the programmatic version = attr: aiida_plugin.__version__
format.
The development status of a plugin used to be recorded explicitly on the plugin registry.
Over time, we've moved closer and closer to adopting the development status trove classifer, so we now suggest to just use those in your setup.json
/setup.cfg
/... file of your plugin.
If no development status is specified, the status will default to 'planning'.
You can reproduce the warnings/errors locally through the instructions.
plugin_info
key is missing.plugin_info
key pointing to the correct plugin_info file.aiida-core
is not found in the plugin requirements.aiida-core
to the plugin requirements with the version specifier.Framework :: AiiDA
in the plugin metadata (e.g. setup.json
, pyproject.toml
, setup.cfg
).Framework :: AiiDA
to the plugin metadata.plugins.yaml
).development_status
is deprecated.development_status
key is found in plugins.yaml
.planning
, pre-alpha
, alpha
, beta
, stable
, mature
, inactive
.planning
, pre-alpha
, alpha
, beta
, stable
, mature
, inactive
. But note that development_status
is deprecated and you should use development status trove classifer instead.plugins.yaml
.aiida-xxx
, the prefix of entry points should be xxx
.plugins.yaml
.plugins.yaml
.pyproject.toml
cannot be parsed.pyproject.toml
is correctly formatted.pyproject.toml
.pyproject.toml
is not one of the following, check PEP621: setuptools
, flit
, poetry
.setuptools
, flit
, poetry
.setup.cfg
, setup.json
), flit (pyproject.toml
), poetry (pyproject.toml
).setuptools
, flit
, poetry
.setup.json
cannot be parsed.setup.json
is correctly formatted.pyproject.toml
.pyproject.toml
.pyproject.toml
.setup.cfg
.setup.cfg
cannot be parsed.setup.cfg
is correctly formatted.pyproject.toml
for aiida-core
.aiida-core
in pyproject.toml
is not valid.aiida-core
in pyproject.toml
is valid and correct.bdist_wheel
available for PyPI release.bdist_wheel
is not available for PyPI release.bdist_wheel
is available for PyPI release.pip install --pre
.