Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/shapiromatron/pycpp
https://github.com/shapiromatron/pycpp
Last synced: 2 days ago
JSON representation
- Host: GitHub
- URL: https://github.com/shapiromatron/pycpp
- Owner: shapiromatron
- License: mit
- Created: 2022-09-22T02:44:02.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2025-01-22T05:15:05.000Z (5 days ago)
- Last Synced: 2025-01-22T05:27:26.594Z (5 days ago)
- Language: Python
- Size: 20.5 KB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# A distributable python/cpp package
Explorations in how to use Python, C++, and bindings between the two systems. Build compiled code in multiple environments via GitHub Actions. Key technologies used include [pybind11](https://pybind11.readthedocs.io/en/stable/) and [cibuildwheel](https://cibuildwheel.readthedocs.io/en/stable/).
The project does the following:
- Builds a simple cpp package
- Builds a python interface to the cpp package
- Has some tests to ensure the cpp package works correctly from python
- Automatically builds the python package on Mac, Linux, and Windows## Quickstart
```bash
# setup environment
python -m venv venv
source venv/bin/activate
pip install -U pip wheel
pip install -r requirements.txt# compile code and install package locally
pip install -e .# run tests to make sure it works and imports into python
py.test# build package locally
python -m build
```