Skip to main content

ditalini

PyPI Version Status Python Package Status Readthedocs Status

Philip Mocz (2024) Flatiron Institute

A modern template for your awesome C++ scientific computing software library/app with wrappers for Python. This repository sets up a project for a standalone C++ library and app, that is also wrapped into a Python package using nanobind and scikit-build-core. The package is automatically published at PyPI with each version release. Documentation is automatically generated at readthedocs.

Installation

The project can be installed in a few different ways.

Get the Python Package

Obtain the published version of the package with:

pip install ditalini

Use the package in your own Python script, e.g.:

import ditalini

sim = ditalini.Simulation(42)

Build with pip

The project can also be built locally. Clone this repository and then do:

pip install .

Build with CMake

The repository can also be built with CMake. Clone this repository and then do:

mkdir build
cd build
cmake ..
make

Documentation

Documentation is automatically generated and hosted at readthedocs with each push. First, Doxygen creates documentation for the C++ Library. Then, Sphinx with the Breathe extension creates a final documentation for the entire project (C++ library and Python package). To build the documentation on your own, you can type make doxygen and make sphinx in the build/ directory.

CI

The .github/workflows directory contains this projects' continuous integration workflows for GitHub Actions.

The python-package workflow will automatically install Python dependencies and run tests on pushes.

The python-publish workflow will automatically upload this repository to PyPI when a release is created. The user must set a secret PYPI_API_TOKEN variable in Github.

Metadata

Release files for ditalini 0.1.4

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for ditalini 0.1.4
File Size Uploaded
ditalini-0.1.4.tar.gz 52.3 kB Details

Release files / ditalini-0.1.4.tar.gz

Download URL ditalini-0.1.4.tar.gz
Size 52.3 kB
Tags Source
SHA-256 checksum
How to use checksums
979d5df352590d1901505c561ecaa4fd9ed82ae4e33fcab3d1c3f85458aa62f0
BLAKE2b-256 checksum
How to use checksums
cb2c7d6db5fc684b8507505c443d63e7d15eacdb1eec6a2626d67d26f444a8b9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/5.1.1 CPython/3.12.7

Release history Release notifications | RSS feed

This release

0.1.4 This release

1 release file

0.1.3

1 release file

0.1.2

1 release file

0.1.1

1 release file

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page