httk-serve
⚠️ EARLY BETA
This is an early beta release of httk₂. The organization of the packages and their APIs should not yet be regarded as stable, and may change between releases.
httk-serve is a httk₂ distribution providing a generic implementation of the OPTIMADE protocol. Durable deployments can pass an httk.store.EntryStore directly to create_asgi_app, which discovers registered OPTIMADE families and queries them lazily; EntryProvider remains the in-memory path for generated and compatibility datasets.
The served API version is OPTIMADE v1.3.0. Implemented optional parts of the
specification include sorting, the references, files, and trajectories entry types,
relationships with the include query parameter, per-property metadata, the partial data
protocol (JSON Lines format and dimension_slices) with the compact list representation,
and the license/available_licenses/warnings meta and base-info fields. Optional parts
that remain unimplemented: cross-source sort merging, filtering on relationship
.target.*/.description/.role properties, the sparse JSON Lines layout, and
rejection of unrecognized query parameters. See
docs/optimade/how_it_works.md for the protocol architecture and backend/web seams.
Multiple Starlette services can be composed at explicit paths. For example, an OPTIMADE index and database can share a parent application without coupling their URL configuration:
from httk.serve import ASGIAppMount, compose_asgi_apps
from httk.serve.optimade import OptimadeIndexConfig, create_index_asgi_app
index = create_index_asgi_app(OptimadeIndexConfig(links=[...]), baseurl="https://example.org/optimade/index/")
app = compose_asgi_apps([ASGIAppMount("/optimade/index", index)], root=ASGIAppMount("/", website_app))
The implementation was ported from the OPTIMADE server in httk v1 (which served OPTIMADE
v1.0.0) and then upgraded to v1.3.0. The legacy client-side validation/ subpackage has
intentionally not been ported; use the official
optimade-validator tool
to check conformance of a running server.
HTTP helpers
httk.serve.http provides lightweight, mountable JSON, JSON-LD, and explicit
file-map applications without requiring a website source tree. Protocol-owned
schemas, vocabulary rules, and discovery document construction remain with
the caller.
Web tooling
httk.serve.web provides Jinja2 rendering, legacy .httkweb compatibility,
static publication, and an ASGI runtime. Its trusted widgets include
httk.serve.table for provider-backed pagination and
httk.serve.optimade_table for browser-side OPTIMADE access. Use
httk serve web serve, httk serve web check, or httk serve web list.
Release files for httk-serve 2.1.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| httk_serve-2.1.2.tar.gz | 422.0 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| httk_serve-2.1.2-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 784.3 kB
Release files / httk_serve-2.1.2.tar.gz
| Download URL | httk_serve-2.1.2.tar.gz |
|---|---|
| Size | 422.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
5598e3addef9b89ed8d0e1fbf77fc3a097a727b8b6e812ee85a19f456cae296a
|
|
BLAKE2b-256 checksum How to use checksums |
a0c5dc1447667dd31bd23d7a240f71b019c111cf314468e578093b3a35c31dae
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 17, 2026.
Transparency logRelease files / httk_serve-2.1.2-py3-none-any.whl
| Download URL | httk_serve-2.1.2-py3-none-any.whl |
|---|---|
| Size | 362.3 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
4dda9fa28bae4f675539076e5d24a9934d672d820cd5398aa38cfd465da18e20
|
|
BLAKE2b-256 checksum How to use checksums |
a43d761d0ddb390ab5e2bfd599f01cb7b44497d02cba6e1ee62214229561f974
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 17, 2026.
Transparency log