Skip to main content

httk-serve

Status: Early beta

⚠️ 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.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

httk_serve-2.1.0.tar.gz (474.3 kB view details)

Uploaded Source

Built Distribution

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

httk_serve-2.1.0-py3-none-any.whl (389.4 kB view details)

Uploaded Python 3

File details

Details for the file httk_serve-2.1.0.tar.gz.

File metadata

  • Download URL: httk_serve-2.1.0.tar.gz
  • Upload date:
  • Size: 474.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for httk_serve-2.1.0.tar.gz
Algorithm Hash digest
SHA256 3d358b278aec2d9b71c0bacc3b130431081692f704542d3e45e61f5d787d86f2
MD5 ad7a2ca17bd9437add9fd64d68a29f7b
BLAKE2b-256 524e0f9b7374cd34a479a1dfffeb454ef53ee9668f9ffc5f0fb46fe017983b9f

See more details on using hashes here.

Provenance

The following attestation bundles were made for httk_serve-2.1.0.tar.gz:

Publisher: release.yml on httk/httk-serve

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file httk_serve-2.1.0-py3-none-any.whl.

File metadata

  • Download URL: httk_serve-2.1.0-py3-none-any.whl
  • Upload date:
  • Size: 389.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for httk_serve-2.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 c1ba2d8abe7a34fb2621ddcd5a667795803717bca53b53f602fa6037b25252f0
MD5 4c679fffbe55523cb0628370d2a978ee
BLAKE2b-256 818b868881004b67747700a419c8579ef0d3e2578cf797f581e7de4d353888bd

See more details on using hashes here.

Provenance

The following attestation bundles were made for httk_serve-2.1.0-py3-none-any.whl:

Publisher: release.yml on httk/httk-serve

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

This release

2.1.0 This release

2 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