Git Product home page Git Product logo

aiida-registry's Introduction

AiiDA plugin registry

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.

How to register a plugin

  1. Fork this repository
  2. Add your plugin to the end of the 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/
    
  3. Create a Pull Request to this repository

Valid keys for each plugin

top-level key (required)

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

entry_point_prefix (required)

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

code_home (required)

The link to the homepage of the plugin, for example its github repository.

pip_url (required for development status 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 PyPI
  • pip_url: git+https://github.com/aiidateam/aiida-wannier90 for a package not registered on PyPI

plugin_info (required for development status stable)

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.

documentation_url (optional)

The link to the online documentation for your plugin, for example on readthedocs.org .

version_file (optional)

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.

development_status (deprecated)

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

aiida-registry's People

Contributors

ltalirz avatar giovannipizzi avatar dropd avatar sphuber avatar chrisjsewell avatar greschd avatar zhubonan avatar atztogo avatar ezpzbz avatar yakutovicha avatar broeder-j avatar philipprue avatar abelcarreras avatar dev-zero avatar garsua avatar adegomme avatar unkcpz avatar blokhin avatar bosonie avatar elsapassaro avatar mikibonacci avatar tsthakur avatar sudarshanv01 avatar sponce24 avatar haozeke avatar rikigigi avatar neelravi avatar rubel75 avatar oschuett avatar matthew-truscott avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.