https://github.com/navapbc/strata-template-rules-engine-catala
https://github.com/navapbc/strata-template-rules-engine-catala
Last synced: 13 days ago
JSON representation
- Host: GitHub
- URL: https://github.com/navapbc/strata-template-rules-engine-catala
- Owner: navapbc
- License: apache-2.0
- Created: 2026-03-06T00:46:35.000Z (4 months ago)
- Default Branch: main
- Last Pushed: 2026-06-24T05:46:50.000Z (16 days ago)
- Last Synced: 2026-06-24T07:29:09.672Z (16 days ago)
- Language: Python
- Size: 1.57 MB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 15
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
- Codeowners: .github/CODEOWNERS
- Security: SECURITY.md
Awesome Lists containing this project
README
Open source tools for every layer of government service delivery.
Strata is a gold-standard target architecture and suite of open-source tools that gives government agencies everything they need to run a modern service.
# Template Rules Engine (Catala)
## Overview
This is a template for creating a rules engine using [Catala](https://catala-lang.org/), a domain-specific language designed to faithfully translate legislative and regulatory texts into executable code. This template includes:
- Catala source files for encoding legislative rules with literate programming style
- Compilation pipeline from Catala to Python
- REST API for exposing compiled rules as endpoints
- Docker-based development environment with the Catala compiler pre-installed
- Thorough formatting & linting tools for the Python wrapper layer
- CI/CD workflow for linting, typechecking, and testing
The template application is intended to work with the infrastructure from [template-infra](https://github.com/navapbc/template-infra).
## Installation
To get started using the template application on your project:
1. [Install the nava-platform tool](https://github.com/navapbc/platform-cli).
2. Install template by running in your project's root:
```sh
nava-platform app install --template-uri https://github.com/navapbc/strata-template-rules-engine-catala .
```
3. Follow the steps in `/docs//getting-started.md` to set up the application locally.
4. Optional, if using the Platform infrastructure template: [Follow the steps in the `template-infra` README](https://github.com/navapbc/template-infra#installation) to set up the various pieces of your infrastructure.
## Testing Template Changes
To test template changes locally, install the application locally to a temporary directory to see changes and run tests.
1. [Install the nava-platform tool (if not already installed)](https://github.com/navapbc/platform-cli).
2. Install template by running in your project's root:
```sh
nava-platform app install --template-uri
```
Example:
```sh
nava-platform app install --template-uri /path/to/strata-template-rules-engine-catala /tmp/test-catala-project test-app
```
3. Follow instructions in the project to install and run Catala and Python tests
## License
This project is licensed under the Apache 2.0 License. See the [LICENSE](LICENSE) file for details.
## Community
- [Code of Conduct](CODE_OF_CONDUCT.md)
- [Contributing Guidelines](CONTRIBUTING.md)
- [Security Policy](SECURITY.md)