Core microsimulation engine enabling country-specific policy models.
Project description
PolicyEngine Core
A fork of OpenFisca-Core that powers PolicyEngine country models (policyengine-uk, policyengine-us, policyengine-canada, policyengine-il, policyengine-ng) and the downstream apps and APIs. Provides the simulation engine, parameter tree, variable system, and reform machinery that each country package builds on top of.
Install
pip install policyengine-core
Supports Python 3.9 – 3.14.
Usage
Most users reach this package transitively through a country model. Import directly if you're building a new country model, writing a reform, or extending the core:
from policyengine_core.simulations import Simulation
from policyengine_core.reforms import Reform
See the documentation for API reference and tutorials.
Development
# Install dev dependencies (uses uv)
make install
# Run the full test suite
make test
# Run a single test
uv run pytest tests/core/test_file.py::test_name -v
# Format before committing (CI enforces)
make format
Always use uv run for Python commands; bare python / pytest / pip may pick up the wrong environment.
Contributions: see CONTRIBUTING.md for branching, PR conventions, and the towncrier changelog.d/ workflow. Default branch is master.
License
Distributed under the AGPL License. See LICENSE for details.
Acknowledgements
- Forked from OpenFisca-Core.
- README template adapted from Othneil Drew's Best-README-Template.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file policyengine_core-3.25.2.tar.gz.
File metadata
- Download URL: policyengine_core-3.25.2.tar.gz
- Upload date:
- Size: 466.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
de80b64b969e3c6b5a3046e29e5b9f2ce56c82f874064f65556fa60c8c423f17
|
|
| MD5 |
b39738fe713c52f07f8596fcfc96a4ad
|
|
| BLAKE2b-256 |
d1ed117c487e09bc2d5dae1d39baef2d317158433f66004f38f19f6ed82110eb
|
File details
Details for the file policyengine_core-3.25.2-py3-none-any.whl.
File metadata
- Download URL: policyengine_core-3.25.2-py3-none-any.whl
- Upload date:
- Size: 231.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c884961937940e16730fb473d486728ed8c66250dc65df15257ad611e6655b09
|
|
| MD5 |
7407c0942c234c61b8daa0a796ff9d1b
|
|
| BLAKE2b-256 |
a222b2297927a2091a22267c112e8d5d5d2b374d0f1ce67f257816fee1388170
|