{"id":23831944,"url":"https://github.com/csdms/bmi-example-python","last_synced_at":"2025-09-07T11:31:19.313Z","repository":{"id":24538115,"uuid":"27944584","full_name":"csdms/bmi-example-python","owner":"csdms","description":"An example of wrapping a model written in Python with a BMI","archived":false,"fork":false,"pushed_at":"2024-12-23T22:46:34.000Z","size":807,"stargazers_count":13,"open_issues_count":8,"forks_count":22,"subscribers_count":10,"default_branch":"master","last_synced_at":"2024-12-23T23:27:48.942Z","etag":null,"topics":["bmi","csdms","python"],"latest_commit_sha":null,"homepage":"https://bmi.csdms.io","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":"commercetools/commercetools-ios-sdk","license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/csdms.png","metadata":{"files":{"readme":"README.rst","changelog":"CHANGES.rst","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":"AUTHORS.rst","dei":null,"publiccode":null,"codemeta":null}},"created_at":"2014-12-13T00:59:42.000Z","updated_at":"2024-11-22T18:42:04.000Z","dependencies_parsed_at":"2024-02-22T20:56:30.757Z","dependency_job_id":"b8e6d5af-d36c-4b1b-9b89-d09522f710a6","html_url":"https://github.com/csdms/bmi-example-python","commit_stats":{"total_commits":228,"total_committers":4,"mean_commits":57.0,"dds":0.25,"last_synced_commit":"b0a471c2f364a66f167b3209203a6991f39d97f2"},"previous_names":[],"tags_count":5,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/csdms%2Fbmi-example-python","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/csdms%2Fbmi-example-python/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/csdms%2Fbmi-example-python/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/csdms%2Fbmi-example-python/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/csdms","download_url":"https://codeload.github.com/csdms/bmi-example-python/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":232206387,"owners_count":18488512,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["bmi","csdms","python"],"created_at":"2025-01-02T14:16:41.334Z","updated_at":"2025-01-02T14:16:41.811Z","avatar_url":"https://github.com/csdms.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":".. image:: https://img.shields.io/badge/CSDMS-Basic%20Model%20Interface-green.svg\n        :target: https://bmi.readthedocs.io/\n        :alt: Basic Model Interface\n\n.. image:: https://github.com/csdms/bmi-example-python/actions/workflows/test.yml/badge.svg\n    :target: https://github.com/csdms/bmi-example-python/actions/workflows/test.yml\n    :alt: CI status\n\n.. image:: https://coveralls.io/repos/csdms/bmi-example-python/badge.png?branch=master\n    :target: https://coveralls.io/r/csdms/bmi-example-python?branch=master\n    :alt: Coverage status\n\n.. image:: https://img.shields.io/badge/code%20style-black-000000.svg\n    :target: https://github.com/csdms/bmi\n    :alt: Black\n\nbmi-example-python\n==================\n\nAn example of implementing the `Python bindings`_\nfor the CSDMS `Basic Model Interface`_ (BMI).\n\nOverview\n--------\n\nThis is an example of implementing a BMI for a simple model\nthat solves the diffusion equation\non a uniform rectangular plate\nwith Dirichlet boundary conditions.\nThe model and its BMI are written in Python 3.\nTests of the BMI are provided.\n\nThis repository is organized with the following directories:\n\n*heat*\n  Source code for the model and its BMI\n\n*examples*\n  Jupyter Notebooks that demonstrate how to run the model through its BMI\n\n*tests*\n  Tests that cover the BMI of the model\n\nBuild/Install\n-------------\n\nThis example can be built and installed on Linux, macOS, and Windows.\n\n**Prerequisites:**\n\n* Python 3\n* The Python BMI bindings. Follow the build and install directions\n  given in the `README`_ in that repository. You can choose to install\n  them from source, or through `pip` or `conda`.\n\nTo build/install this example from source,\nusing the current Python BMI version, run\n\n.. code-block:: bash\n\n  $ pip install -e .\n\nTo run the tests,\n\n.. code-block:: bash\n\n  $ pip install -r requirements-testing.txt\n  $ make test\n\n\n.. _Python bindings: https://github.com/csdms/bmi-python\n.. _Basic Model Interface: https://bmi.readthedocs.io\n.. _README: https://github.com/csdms/bmi-python/blob/master/README.rst\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcsdms%2Fbmi-example-python","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcsdms%2Fbmi-example-python","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcsdms%2Fbmi-example-python/lists"}