Skip to main content

Simple yet powerful Chilean and other tools written in Rust and Python.

Project description

Welcome to CL Forge!

banner

Simple yet powerful Chilean tools written in Rust and Python.

PyPI - Version GitHub Release PyPI - Python Version GH Pages - Docs

PyPI - Status PyPI - Types GitHub License

GitHub Actions Workflow Status GitHub Actions Workflow Status pages-build-deployment

cl-forge provides a collection of high-performance utilities for common Chilean data formats and API integrations. The core logic is implemented in Rust for maximum speed, with a clean and easy-to-use Python interface.

Features

  • High Performance: Core logic written in Rust.
  • Verify: Efficiently validate Chilean RUT/RUN and PPU (License Plates).
  • API Integrations: Simple clients to interact with the CMF and Public Market APIs.
  • Type Safety: Full type hints and .pyi stubs for excellent IDE support.

Examples

Validate

You can validate if a verifier digit is correct for a given numeric part of a RUT/RUN.

from cl_forge import verify

is_valid = verify.validate_rut(8750720, "3")

print(f"RUT is valid: {is_valid}")
# RUT is valid: True

... Or you can calculate the verifier digit yourself.

from cl_forge import verify

dv = verify.calculate_verifier(8750720)

print(f"Verifier digit: {dv}")
# Verifier digit: 3

Generate

Need to generate a bunch of random, unique and valid RUTs? No problem! And you can even specify a random seed, so you can reproduce the same results every time.

from cl_forge import verify

ruts = verify.generate(
   n=100,
   min=1_000_000,
   max=20_000_000,
   seed=42
)

print(ruts)
# [{'correlative': 8750720, 'verifier': '3'}, ...]

API Clients

The CMF API client allows you to easily interact with the CMF API.

from cl_forge.cmf import CmfClient

client = CmfClient(api_key="your-api-key")

# Get latest IPC data
ipc_data = client.get(path="/ipc")

print(ipc_data)
# {'IPCs': [{'Valor': '-0,2', 'Fecha': '2025-12-01'}]}

[!IMPORTANT] To use the CMF API, you need an API key. You can request one at Contact CMF.

See the API Reference for endpoint-specific clients, and the CMF API documentation for details about all the available endpoints.

The Public Market API client also allows you to easily interact with the Mercado Público API.

from cl_forge.market import MarketClient

client = MarketClient(ticket='your-api-ticket')

tenders_data = client.get(path="/licitaciones")

print(tenders_data)
#{'Cantidad': 463,
# 'FechaCreacion': '2026-02-12T16:07:58.813315Z',
# 'Version': 'v1',
# 'Listado': [{'CodigoExterno': '1057049-30-B226',
#   'Nombre': 'CSP- SERVICIO DE INMUNOHISTOQUÍMICA Y CISH',
#   'CodigoEstado': 5,
#   'FechaCierre': '2026-02-23T15:30:00'},
#  {'CodigoExterno': '1057374-8-L126',
# ...}

[!IMPORTANT] To use the Mercado Público API, you need an API ticket. You can request one at Contact Mercado Público. To request this API ticket, you will also have to request and activate your ClaveÚnica.

See the Mercado Público API documentation for details about all the available endpoints. Endpoint-specific clients coming soon in future updates.

Contributing

Pull requests are welcome. For changes and reporting bugs, please open an issue first to discuss it. Read our Contributing Guide for more details.

License

This project is licensed under the Apache 2.0 License - see the LICENSE file for details.

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

cl_forge-1.0.1.tar.gz (45.6 kB view details)

Uploaded Source

Built Distributions

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

cl_forge-1.0.1-cp314-cp314-win_arm64.whl (2.6 MB view details)

Uploaded CPython 3.14Windows ARM64

cl_forge-1.0.1-cp314-cp314-win_amd64.whl (2.5 MB view details)

Uploaded CPython 3.14Windows x86-64

cl_forge-1.0.1-cp314-cp314-macosx_11_0_arm64.whl (3.0 MB view details)

Uploaded CPython 3.14macOS 11.0+ ARM64

cl_forge-1.0.1-cp314-cp314-macosx_10_12_x86_64.whl (3.1 MB view details)

Uploaded CPython 3.14macOS 10.12+ x86-64

cl_forge-1.0.1-cp313-cp313-win_arm64.whl (2.6 MB view details)

Uploaded CPython 3.13Windows ARM64

cl_forge-1.0.1-cp313-cp313-win_amd64.whl (2.5 MB view details)

Uploaded CPython 3.13Windows x86-64

cl_forge-1.0.1-cp313-cp313-macosx_11_0_arm64.whl (3.0 MB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

cl_forge-1.0.1-cp313-cp313-macosx_10_12_x86_64.whl (3.1 MB view details)

Uploaded CPython 3.13macOS 10.12+ x86-64

cl_forge-1.0.1-cp312-cp312-win_arm64.whl (2.6 MB view details)

Uploaded CPython 3.12Windows ARM64

cl_forge-1.0.1-cp312-cp312-win_amd64.whl (2.5 MB view details)

Uploaded CPython 3.12Windows x86-64

cl_forge-1.0.1-cp312-cp312-macosx_11_0_arm64.whl (3.0 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

cl_forge-1.0.1-cp312-cp312-macosx_10_12_x86_64.whl (3.1 MB view details)

Uploaded CPython 3.12macOS 10.12+ x86-64

cl_forge-1.0.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (3.3 MB view details)

Uploaded CPython 3.8manylinux: glibc 2.17+ x86-64

cl_forge-1.0.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (3.2 MB view details)

Uploaded CPython 3.8manylinux: glibc 2.17+ ARM64

File details

Details for the file cl_forge-1.0.1.tar.gz.

File metadata

  • Download URL: cl_forge-1.0.1.tar.gz
  • Upload date:
  • Size: 45.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.3 {"installer":{"name":"uv","version":"0.10.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for cl_forge-1.0.1.tar.gz
Algorithm Hash digest
SHA256 774a90aa497c9357900d307d6d19e4dbe2ac89adfdcc524af567e55e6a71edd1
MD5 73c2a8c51082fb25d679c26000c295fb
BLAKE2b-256 9dfdc8587cbe0b709bbea11231136ff3a8a50a4b6b3e42017bf0a0df0b46964a

See more details on using hashes here.

File details

Details for the file cl_forge-1.0.1-cp314-cp314-win_arm64.whl.

File metadata

  • Download URL: cl_forge-1.0.1-cp314-cp314-win_arm64.whl
  • Upload date:
  • Size: 2.6 MB
  • Tags: CPython 3.14, Windows ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.3 {"installer":{"name":"uv","version":"0.10.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for cl_forge-1.0.1-cp314-cp314-win_arm64.whl
Algorithm Hash digest
SHA256 9d27febbed6d1fd8c36347e1c016be725526a892ca0f5c9b1740130b96eff369
MD5 3178fa834f90adbec30c921be705a184
BLAKE2b-256 2bb859df5aa8deb1545d2c4c9016841e0cf5cb41e00921f9a443432e30cdeb4e

See more details on using hashes here.

File details

Details for the file cl_forge-1.0.1-cp314-cp314-win_amd64.whl.

File metadata

  • Download URL: cl_forge-1.0.1-cp314-cp314-win_amd64.whl
  • Upload date:
  • Size: 2.5 MB
  • Tags: CPython 3.14, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.3 {"installer":{"name":"uv","version":"0.10.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for cl_forge-1.0.1-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 3f4ea25d3b51f8e66fdd344a85215e3b2b1a7958233b52e939b76002619d2550
MD5 745f54a76ae35289c40846a417a231b9
BLAKE2b-256 706b6172ddae8b179978a58d780de91924135cfd548eb167eb8a492db3425fe6

See more details on using hashes here.

File details

Details for the file cl_forge-1.0.1-cp314-cp314-macosx_11_0_arm64.whl.

File metadata

  • Download URL: cl_forge-1.0.1-cp314-cp314-macosx_11_0_arm64.whl
  • Upload date:
  • Size: 3.0 MB
  • Tags: CPython 3.14, macOS 11.0+ ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.3 {"installer":{"name":"uv","version":"0.10.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for cl_forge-1.0.1-cp314-cp314-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 87fd9bb43711a12b38e6054bb3074a97e60aac7c6557da1f53ac22c3a002269d
MD5 c19b5eaf2e703f9d360492c5f4d48990
BLAKE2b-256 d8d1df65f3db9baea03f816693b49eba2e38811ec928ad697a456dd846e6b452

See more details on using hashes here.

File details

Details for the file cl_forge-1.0.1-cp314-cp314-macosx_10_12_x86_64.whl.

File metadata

  • Download URL: cl_forge-1.0.1-cp314-cp314-macosx_10_12_x86_64.whl
  • Upload date:
  • Size: 3.1 MB
  • Tags: CPython 3.14, macOS 10.12+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.3 {"installer":{"name":"uv","version":"0.10.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for cl_forge-1.0.1-cp314-cp314-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 4e464a8c10c68c8dec7af925a332764e5ae24046482aa6688bf73bb6fbb77470
MD5 9fc919cb5ceb597ce95c388e84a4e19a
BLAKE2b-256 d55dd269b56df0cab6bb1bb29ae957b81f613323405e5b276ca237df42ba0829

See more details on using hashes here.

File details

Details for the file cl_forge-1.0.1-cp313-cp313-win_arm64.whl.

File metadata

  • Download URL: cl_forge-1.0.1-cp313-cp313-win_arm64.whl
  • Upload date:
  • Size: 2.6 MB
  • Tags: CPython 3.13, Windows ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.3 {"installer":{"name":"uv","version":"0.10.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for cl_forge-1.0.1-cp313-cp313-win_arm64.whl
Algorithm Hash digest
SHA256 bf69a3114e748199be59925af9852082feb9fbb217e24bda0be7d59210a34c14
MD5 5cb1d8255fa09329f327ce13653e4e26
BLAKE2b-256 6ace88e744584f5e33fb6f80c65c21136d5eb3cc04608d014f91450e55bb37f9

See more details on using hashes here.

File details

Details for the file cl_forge-1.0.1-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: cl_forge-1.0.1-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 2.5 MB
  • Tags: CPython 3.13, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.3 {"installer":{"name":"uv","version":"0.10.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for cl_forge-1.0.1-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 404397356248af9b6ebb67efd58e30fa928aab8932e7d57bc0727c215fbcb3b8
MD5 77bb298b607cf594defe09bef0404036
BLAKE2b-256 850426cad37dbf54d23c6ae76c6567a1879b512dcd83bd7a5a20ac5cabe5bcfa

See more details on using hashes here.

File details

Details for the file cl_forge-1.0.1-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

  • Download URL: cl_forge-1.0.1-cp313-cp313-macosx_11_0_arm64.whl
  • Upload date:
  • Size: 3.0 MB
  • Tags: CPython 3.13, macOS 11.0+ ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.3 {"installer":{"name":"uv","version":"0.10.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for cl_forge-1.0.1-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 64d10e1594b02602cd9ec5b906011b8d14c46fbfe311d11f5bc89f3f0d186f28
MD5 50b0329cca667599fc941388b6e86a2a
BLAKE2b-256 e61d4acf55c7d30c0a93950a8188fa7666bf16f80c1440f340518af3d1855e08

See more details on using hashes here.

File details

Details for the file cl_forge-1.0.1-cp313-cp313-macosx_10_12_x86_64.whl.

File metadata

  • Download URL: cl_forge-1.0.1-cp313-cp313-macosx_10_12_x86_64.whl
  • Upload date:
  • Size: 3.1 MB
  • Tags: CPython 3.13, macOS 10.12+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.3 {"installer":{"name":"uv","version":"0.10.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for cl_forge-1.0.1-cp313-cp313-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 a9de6fa604621f6057bedcddbebd5bdf62f3f51a08ef0d1a33a0eacd25f299d5
MD5 b62aeecc0a9994ae4220c7722a1f2d10
BLAKE2b-256 92f6c7bbf15fd93290faf087abd08d17bc0b8fc489d816874e85a26aabc02b14

See more details on using hashes here.

File details

Details for the file cl_forge-1.0.1-cp312-cp312-win_arm64.whl.

File metadata

  • Download URL: cl_forge-1.0.1-cp312-cp312-win_arm64.whl
  • Upload date:
  • Size: 2.6 MB
  • Tags: CPython 3.12, Windows ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.3 {"installer":{"name":"uv","version":"0.10.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for cl_forge-1.0.1-cp312-cp312-win_arm64.whl
Algorithm Hash digest
SHA256 dfe81f5a5f9536058093a2490ce8413cf12cf2bd296768898a4ba3fd1222da6f
MD5 30501d188747e37b93bad383be5ea750
BLAKE2b-256 60d3edabe9105a50abfd80b8841ddd0ffb352c00cdab83d9b23b16bc28cc3afb

See more details on using hashes here.

File details

Details for the file cl_forge-1.0.1-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: cl_forge-1.0.1-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 2.5 MB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.3 {"installer":{"name":"uv","version":"0.10.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for cl_forge-1.0.1-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 58e2dfb32d035b5634419a7880b8be3b5d994e5ce711d8f64fba1b3dfa28cc15
MD5 5e6e1560f2addb7ec946dc56d75c5a96
BLAKE2b-256 99c8454539c70eb944eb18ddef9b7aca26d4d3d4af571c2de4a1b8da77aae84e

See more details on using hashes here.

File details

Details for the file cl_forge-1.0.1-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

  • Download URL: cl_forge-1.0.1-cp312-cp312-macosx_11_0_arm64.whl
  • Upload date:
  • Size: 3.0 MB
  • Tags: CPython 3.12, macOS 11.0+ ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.3 {"installer":{"name":"uv","version":"0.10.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for cl_forge-1.0.1-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 b9f5db7c8123bcb0497f81f1239021d045e2178513264f391485033b73c4c47c
MD5 9b6b9717c6ed93a180e4039455d80120
BLAKE2b-256 b36bee2ab3f033d4dd3f0f2aee6414669d0b3588e02ca30543ead37a93c57abe

See more details on using hashes here.

File details

Details for the file cl_forge-1.0.1-cp312-cp312-macosx_10_12_x86_64.whl.

File metadata

  • Download URL: cl_forge-1.0.1-cp312-cp312-macosx_10_12_x86_64.whl
  • Upload date:
  • Size: 3.1 MB
  • Tags: CPython 3.12, macOS 10.12+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.3 {"installer":{"name":"uv","version":"0.10.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for cl_forge-1.0.1-cp312-cp312-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 567e232ef25343ec1786ec77a28d98a5e44d2174695df446a1f9c7afb07558bd
MD5 33dea359ea131f2b051f0049a2f4610f
BLAKE2b-256 900aa62e0a82b5a6bb1fbd381f1fa5c6c8b50d212e6b0c8faaca6e78dfc9b8f4

See more details on using hashes here.

File details

Details for the file cl_forge-1.0.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

  • Download URL: cl_forge-1.0.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
  • Upload date:
  • Size: 3.3 MB
  • Tags: CPython 3.8, manylinux: glibc 2.17+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.3 {"installer":{"name":"uv","version":"0.10.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for cl_forge-1.0.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 854cfb2cf17fd68d0d59b34d3dbdae26c62a78a5b425c710e5a5aad402d5d2c4
MD5 8c1028af7b5ba8a408b76523fe43e79d
BLAKE2b-256 72b4077552db1120e9da89b4dff36524df9f13137db1f39d973773905134786b

See more details on using hashes here.

File details

Details for the file cl_forge-1.0.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

  • Download URL: cl_forge-1.0.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
  • Upload date:
  • Size: 3.2 MB
  • Tags: CPython 3.8, manylinux: glibc 2.17+ ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.3 {"installer":{"name":"uv","version":"0.10.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for cl_forge-1.0.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 94a1ea4edde7e0cad29189de288b25a49984f48d3bd438718e52d1e68d4a0fe5
MD5 93b1150beae99435d530a7609d93338c
BLAKE2b-256 bb2a318b3817319f59d89f0ee13ee66a3f8bae72107b11f4ae0271b1f1118da8

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