PyAnsys project organization#

The PyAnsys project is hosted on GitHub at PyAnsys GitHub organization. It contains several repositories with Python libraries that interface with Ansys products or services. To try out a library, visit one of these links:

If you want to create, develop, or contribute to a PyAnsys library, visit these links:

Using the following tools, developers generate library packages from PROTO files, create coverage reports, and report on system coverage:

Quick start guide#

This is an overview on how to create your own PyAnsys repository in the PyAnsys GitHub organization. A repository is generally a project for a particular PyAnsys library.

  1. Create the repository: Create a repository from the pyansys/template. See Creating a repository from a template. Be sure that the repository visibility is initially private.

  2. Rename the package: Rename ansys/product/library to match your product or library. For example, the package name for PyMAPDL is ansys/mapdl/core. Do the same renaming in setup.py. Do this as a pull request. In fact, only add code as pull requests. Do not push to main.)

  3. Add source: Add your source files to ansys/<product>/<library> or create them. Also add unit tests to tests/ following the pytest convention. Be sure to maintain sufficient coverage when adding your library. See pytest-cov.

    Note

    If your tests require an active service, app, or product, be sure to set up this app to run in an automated manner.

  4. Update documentation: The documentation source and content vary from repository to repository. In doc/, there are folders for different types of documentation, which can include guides, examples, and API. Ensure that all documentation is updated. See Documentation style.

  5. Prepare the package for release: When you are ready to release your package publicly, email pyansys.core@ansys.com to obtain the release checklist for obtaining official Ansys approval. Once you have completed this checklist, change the repository visibility to public and create a release branch.