Skip to main content

Co-modeling tools for hardware generation with Python

Project description

ComoPy: Co-modeling Tools for Hardware Generation with Python

ComoPy (Co-modeling tools in Python) is a Python-based Hardware Generation, Simulation, and Debugging Framework (HGSDF) that enables hardware development with the same ease and flexibility as software development.

Development Setup

Prerequisites

  • Python 3.13 (recommended — prebuilt CIRCT wheels on PyPI target Python 3.13)
  • Python 3.10+ is supported; on 3.10/3.11/3.12 you may need to build CIRCT from source
  • pip (Python package installer)

Install Dependencies

To set up the development environment, install the required dependencies:

# Install core dependencies
pip install -e .

# Install development dependencies (for testing)
pip install -e ".[dev]"

Set Up Pre-commit Hooks

If you plan to contribute to the project, install pre-commit hooks to automatically check code quality before commits:

# Install pre-commit
pip install pre-commit

# Install the git hooks
pre-commit install

Run Tests

After installing the development dependencies, you can run the test suite using pytest:

# Run all tests
pytest

# Run tests with coverage report
pytest --cov=comopy

# Run tests with HTML coverage report
pytest --cov=comopy --cov-report=html

# Run tests in verbose mode
pytest -v

# Run specific test file
pytest comopy/tests/test_specific.py

The tests are configured via pytest.ini in the project root.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

comopy-0.6.0.tar.gz (179.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

comopy-0.6.0-py3-none-any.whl (247.3 kB view details)

Uploaded Python 3

File details

Details for the file comopy-0.6.0.tar.gz.

File metadata

  • Download URL: comopy-0.6.0.tar.gz
  • Upload date:
  • Size: 179.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.12

File hashes

Hashes for comopy-0.6.0.tar.gz
Algorithm Hash digest
SHA256 229be7e7140b146eca2bfa8a44f8075c37faad464f533dd57aab6948718e4be9
MD5 739e979e82a87e11e9db8d3a32eca238
BLAKE2b-256 5a99cb6672ea918b57e490e4e8152a6d7bdf6cf412f30ccc3386032442cca52e

See more details on using hashes here.

File details

Details for the file comopy-0.6.0-py3-none-any.whl.

File metadata

  • Download URL: comopy-0.6.0-py3-none-any.whl
  • Upload date:
  • Size: 247.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.12

File hashes

Hashes for comopy-0.6.0-py3-none-any.whl
Algorithm Hash digest
SHA256 81eb56d9dfe2143085fc79317edc68e175dcbed217fa11a7a0b94fe581a19b43
MD5 c5cb4317c1ce5b57dae33c4578602f81
BLAKE2b-256 56be2116eca3c615b1e4e8e77c12e966146d9e4ebcff649374b9bed1f042c0ac

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page