Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

🚧 This project is in active beta development. This means the API is unstable, features may be added or removed, and breaking changes are likely to occur frequently and without notice as the design is refined.

CI Coverage Release PyPI Docs License

Efficient Renderer for Natural and Interplanetary Environments (Ernie)

Ernie is a physically accurate, real-time, spectral renderer for interplanetary environments.

It is a Vulkan ray tracer for Linux, Windows and macOS (through MoltenVK), with C++ and Python APIs and a Hydra-like scene API. Ernie is designed around physical quantities, efficient batched rendering, and interoperability.

Ernie is built to be extensible, customizable, and to work alongside other tools. You can add your own BRDFs, sensor filters and light patterns. Rendered outputs and scene attributes (transforms, mesh vertices, light parameters and more) are shared zero copy with any DLPack tensor (PyTorch, JAX, Warp, NumPy), which makes Ernie a good fit for real-time physics simulation and reinforcement learning. Support for OpenUSD and glTF scenes, and for MDL and MaterialX materials, is planned.

Its key features are aimed at planetary robotics and sensing:

  • Spectral light
    • Light carried in bands (16 across 380-780 nm by default, up to 64 into the infrared) from the source, through materials and media, to the sensor
    • Sun, sky, lamps, domes and lasers in physical units, with measured spectra such as the TSIS-1 sun
    • Distant lights as limb-darkened discs whose angular size sets every penumbra
  • Planets and space
    • Terrain and whole planets with continuous level of detail from orbit to the ground, their heights and maps streamed from rasters larger than GPU memory
    • Adaptive spheres and ellipsoids, exact from a pebble to a star, in double precision with a floating origin and reverse-Z depth
    • Earth and Mars atmospheres from physical models, with refraction, seen from the ground or from orbit
    • Eclipses cast by real geometry, and star fields from your own catalogues
  • Materials
    • Planetary photometry with Hapke, Lommel-Seeliger and lunar-Lambert, with parameters from texture maps
    • OpenPBR Surface and UsdPreviewSurface, spectral throughout
    • Your own BRDFs written in Slang
  • Cameras and sensors
    • Perspective, fisheye, orthographic and line-scan pushbroom cameras, with CAHVORE and USGS CSM instrument models
    • The EMVA 1288 sensor model: quantum efficiency, shot and read noise, dark current, PRNU, DSNU, full well and ADC
    • Filter chains for optics and detectors (diffraction, lens flare, blooming, smear, TDI, Bayer, companding), with your own in Slang
    • Polarization cameras
  • Thermal infrared
    • Planck emission from surfaces and volumes, with emissivity from Kirchhoff's law or measured spectra
    • Temperatures from your own solver, textures, or models run per pixel: spacecraft energy balance and diurnal tables for airless bodies
    • Microbolometer cameras with NETD, fixed pattern noise and false-colour palettes
  • Volumes
    • Smoke, dust, exhaust plumes and clouds from VDB files or GPU arrays, ray marched spectrally and casting shadows
    • Procedural cloud layers, with Mie droplets for silver linings, fogbows and glories
  • Lasers and structured light
    • Gaussian beams and diffractive patterns (lines, grids, dot fields or your own), pulses, speckle, and beams seen in dust and air
  • Simulation and learning
    • Thousands of worlds and cameras rendered in one batched step for RL and Monte Carlo workloads
    • Inputs and outputs shared without copies with PyTorch, JAX, Warp and NumPy, through CUDA and HIP
    • Columns and incremental sync: thousands of prims' poses written in one call, and an edit redraws only what it reaches
  • Tools and integrations
    • A viewer with your own panels and debug drawing, and C++ and Python APIs on Linux, Windows and macOS
    • OpenUSD import, renderer backends for Newton Viewer, IsaacLab and Chrono::Sensor, and TerrainGen built on the viewer

For a more detailed overview of the features, see our documentation.

Future work:

  • A fully USD- and glTF-compliant renderer, loading OpenUSD, glTF, OBJ, STL and 3D Tiles, with the glTF material system, UsdPreviewSurface shaders and MDL and MaterialX support
  • Differentiable rendering
  • Reflections and global illumination
  • OpenXR integrations
  • WebGPU backend
  • Gaussian splat and particle fields
  • Lidar and radar sensors
  • A real-time ray-tracing renderer alongside the rasterizer
  • Integrations into Newton Viewer, Chrono Sensor, and IsaacLab
  • Benchmark against RTX, Cycles, Newton Warp Raytrace, Madrona both in speed, throughput, and image quality

Installation

The Python package is on PyPI as ernie-renderer (Python 3.12 or later, with a Vulkan 1.3 driver). It bundles everything else, the viewer and the native ernie program included:

pip install ernie-renderer

Each GitHub release also has an ernie package for Ubuntu 22.04+, Debian 12+ and RHEL 9+ (and a tarball for other distributions), with the library, the viewer, and the headers and CMake package for building against it in C++. Download it from the latest release and install it with a Vulkan driver: Mesa's below, which includes the lavapipe software driver for machines without a GPU, or your GPU vendor's.

# Debian, Ubuntu
sudo apt install mesa-vulkan-drivers
sudo apt install ./ernie_*.deb

# RHEL, Rocky, Fedora
sudo dnf install mesa-vulkan-drivers
sudo dnf install ./ernie-*.rpm

Docker

The ernie program is also published as a Docker image.

docker run --rm --gpus all -v "$PWD:/out" ghcr.io/alexmaietta/ernie --demo demo_atmosphere_earth --viewer null --output /out/earth.png

Build from source

Ernie needs CMake 3.24+, a C++20 compiler and a Vulkan 1.3 driver; it fetches its other dependencies (see third_party/README.md).

cmake -S . -B build -DERNIE_BUILD_TESTS=ON -DERNIE_INSTALL=ON -DERNIE_BUILD_PYTHON=ON -DERNIE_BUILD_APP=ON
cmake --build build
ctest --test-dir build -j4              # C++, GPU and Python tests
build/bin/ernie                         # the viewer
cmake --install build --prefix ~/.local # libernie, headers and the CMake package

To build the Python wheel instead, run uv build --wheel --out-dir dist . and uv pip install dist/ernie_renderer-*.whl; for the Linux packages, cmake --preset package-deb (or package-rpm), cmake --build --preset package-deb and cpack --preset package-deb. See CONTRIBUTING.md for the build options, testing without a GPU on lavapipe, and benchmarks.

Quick Start

Run ernie to open the Ernie Viewer. Its Demos panel runs any of the built-in demos, each written in both C++ and Python, covering cameras and sensors, lighting, atmospheres, terrain, lasers, batched rendering and the viewer; the two versions of a demo render the same image.

ernie                               # the viewer, with the Demos panel
ernie --list                        # every demo's name
ernie --demo demo_atmosphere_earth  # run one demo
ernie --help                        # every option

python -m ernie opens the same viewer and takes the same options, and python -m ernie.demos runs the Python version of a demo:

python -m ernie.demos --list
python -m ernie.demos demo_atmosphere_earth

Every demo takes common options, such as --viewer null to render without a window and --output frame.png to save the last frame; --help lists them.

Your First Render

Python

from PIL import Image

import ernie
from ernie import tokens

scene = ernie.Scene()
scene.define("/World/Ground", ernie.GroundPlane)
scene.define("/World/Rock", ernie.Sphere, translate=(0, 0, 1))  # 1 m up
scene.define("/World/Sun", ernie.DistantLight).set(
    tokens.TRANSFORM, ernie.distant_light_transform((0.4, -0.6, 0.7))
)
scene.define("/World/Camera", ernie.Camera).set(
    tokens.TRANSFORM, ernie.look_at_transform((0, -8, 3), (0, 0, 1))
)
scene.define(
    "/Render/Settings", ernie.RenderSettings, camera="/World/Camera", resolution=(640, 480)
)

renderer = ernie.Renderer()
image = renderer.render(scene)  # a (480, 640, 4) uint8 NumPy array
Image.fromarray(image).save("ernie.png")

C++

With the ernie package or your own build installed, find it with CMake:

find_package(Ernie REQUIRED)
target_link_libraries(my_app PRIVATE Ernie::ernie)
#include <ernie/scene/schemas.h>
#include <ernie/scene/tokens.h>
#include <ernie/scene/xform.h>
#include <ernie/render/renderer.h>

int main() {
    using namespace ernie;
    Scene scene;
    GroundPlane::Define(scene, "/World/Ground");
    Sphere::Define(scene, "/World/Rock");
    SetXform(scene, "/World/Rock", {.translate = glm::dvec3(0.0, 0.0, 1.0)});  // 1 m up
    DistantLight::Define(scene, "/World/Sun");
    scene.Set("/World/Sun", tokens::kTransform, DistantLightTransform({0.4, -0.6, 0.7}));
    Camera::Define(scene, "/World/Camera");
    scene.Set("/World/Camera", tokens::kTransform,
              LookAtTransform({0.0, -8.0, 3.0}, {0.0, 0.0, 1.0}, {0.0, 0.0, 1.0}));
    RenderSettings::Define(scene, "/Render/Settings")
        .SetCamera("/World/Camera")
        .SetResolution({640, 480});

    Renderer renderer;
    Tensor image = renderer.Render(scene);  // 480 x 640 x 4 bytes of LdrColor on the CPU
}

Citation

If you use Ernie in your research, please cite it. GitHub's "Cite this repository" button gives the same citation from CITATION.cff.

@software{maietta2026ernie,
  author  = {Maietta, Alex},
  title   = {Ernie: Efficient Renderer for Natural and Interplanetary Environments},
  year    = {2026},
  version = {0.1.0},
  url     = {https://github.com/alexmaietta/ernie},
  license = {BSD-3-Clause}
}

License

Ernie is licensed under the BSD 3-Clause License. The third-party libraries it bundles keep their own licenses, listed in third_party/README.md.

Metadata

Release files for ernie-renderer 0.2.0.dev45

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for ernie-renderer 0.2.0.dev45
File Size Uploaded
ernie_renderer-0.2.0.dev45.tar.gz 1.3 MB Details

Built distributions (wheels)

Table of built distributions (wheels) for ernie-renderer 0.2.0.dev45
File
ernie_renderer-0.2.0.dev45-cp312-abi3-win_amd64.whl CPython 3.12 abi3 Windows x86-64 Details
ernie_renderer-0.2.0.dev45-cp312-abi3-manylinux_2_34_x86_64.whl CPython 3.12 abi3 Linux glibc 2.34+ x86-64 Details
ernie_renderer-0.2.0.dev45-cp312-abi3-manylinux_2_34_aarch64.whl CPython 3.12 abi3 Linux glibc 2.34+ ARM64 Details
ernie_renderer-0.2.0.dev45-cp312-abi3-macosx_14_0_arm64.whl CPython 3.12 abi3 macOS 14.0+ ARM64 Details
ernie_renderer-0.2.0.dev45-cp311-cp311-win_amd64.whl CPython 3.11 CPython 3.11 Windows x86-64 Details
ernie_renderer-0.2.0.dev45-cp311-cp311-manylinux_2_34_x86_64.whl CPython 3.11 CPython 3.11 Linux glibc 2.34+ x86-64 Details
ernie_renderer-0.2.0.dev45-cp311-cp311-manylinux_2_34_aarch64.whl CPython 3.11 CPython 3.11 Linux glibc 2.34+ ARM64 Details
ernie_renderer-0.2.0.dev45-cp311-cp311-macosx_14_0_arm64.whl CPython 3.11 CPython 3.11 macOS 14.0+ ARM64 Details
ernie_renderer-0.2.0.dev45-cp310-cp310-win_amd64.whl CPython 3.10 CPython 3.10 Windows x86-64 Details
ernie_renderer-0.2.0.dev45-cp310-cp310-manylinux_2_34_x86_64.whl CPython 3.10 CPython 3.10 Linux glibc 2.34+ x86-64 Details
ernie_renderer-0.2.0.dev45-cp310-cp310-manylinux_2_34_aarch64.whl CPython 3.10 CPython 3.10 Linux glibc 2.34+ ARM64 Details
ernie_renderer-0.2.0.dev45-cp310-cp310-macosx_14_0_arm64.whl CPython 3.10 CPython 3.10 macOS 14.0+ ARM64 Details

Total release size: 3.0 MB

Release files / ernie_renderer-0.2.0.dev45.tar.gz

Download URL ernie_renderer-0.2.0.dev45.tar.gz
Size 1.3 MB
Tags Source
SHA-256 checksum
How to use checksums
3db715982489b60702d1d6c021604866d1e569d6f773f2563fc2aa0d1a17ec3a
BLAKE2b-256 checksum
How to use checksums
30b92d84c213657ed4e7d995d77da1aedebee2c69899a736105e71a304cc5ce9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.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 Oct 18, 2026.

Transparency log

Release files / ernie_renderer-0.2.0.dev45-cp312-abi3-win_amd64.whl

Download URL ernie_renderer-0.2.0.dev45-cp312-abi3-win_amd64.whl
Size 293.1 kB
Tags CPython 3.12 Windows x86-64 abi3
SHA-256 checksum
How to use checksums
38217724d4c437e3ee5be7f5a98dc79e56b1f220c1c40556b4295d5a11a29331
BLAKE2b-256 checksum
How to use checksums
c820524db8f8bde2004e4e4064d58ba833ba80509e5f0b5a8569fafcb38b7d01
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.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 Oct 18, 2026.

Transparency log

Release files / ernie_renderer-0.2.0.dev45-cp312-abi3-manylinux_2_34_x86_64.whl

Download URL ernie_renderer-0.2.0.dev45-cp312-abi3-manylinux_2_34_x86_64.whl
Size 105.0 kB
Tags CPython 3.12 Linux glibc 2.34+ x86-64 abi3
SHA-256 checksum
How to use checksums
d6f4cc9eb0be14f7b29cf334059bc66c9ed54f636a6acedc43f8aaba1c09d0a0
BLAKE2b-256 checksum
How to use checksums
03597558e68f7b422766ef7956c2d5fe47138d383d30c9f2d4c1f8516939ed19
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.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 Oct 18, 2026.

Transparency log

Release files / ernie_renderer-0.2.0.dev45-cp312-abi3-manylinux_2_34_aarch64.whl

Download URL ernie_renderer-0.2.0.dev45-cp312-abi3-manylinux_2_34_aarch64.whl
Size 94.6 kB
Tags CPython 3.12 Linux glibc 2.34+ ARM64 abi3
SHA-256 checksum
How to use checksums
d86ef3b0be7d9ebd471160cf26c7c10d13399aaeb66d9276f42e1630d085f1e2
BLAKE2b-256 checksum
How to use checksums
bfb02fcc02a98826804a2847148130e2012f9baa73c59a7a253b435948667bb9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.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 Oct 18, 2026.

Transparency log

Release files / ernie_renderer-0.2.0.dev45-cp312-abi3-macosx_14_0_arm64.whl

Download URL ernie_renderer-0.2.0.dev45-cp312-abi3-macosx_14_0_arm64.whl
Size 61.8 kB
Tags CPython 3.12 abi3 macOS 14.0+ ARM64
SHA-256 checksum
How to use checksums
a988ccdd27e66157c6bb39ac120b206605a13853ce96ebd362d2f9d85e54effc
BLAKE2b-256 checksum
How to use checksums
4824c2f1f2dab924a06a3d58dfd760f993873922d684db6e60d4b91c4777bf04
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.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 Oct 18, 2026.

Transparency log

Release files / ernie_renderer-0.2.0.dev45-cp311-cp311-win_amd64.whl

Download URL ernie_renderer-0.2.0.dev45-cp311-cp311-win_amd64.whl
Size 293.6 kB
Tags CPython 3.11 Windows x86-64
SHA-256 checksum
How to use checksums
622cca4e63e007e528852f282bcb8d06c7f58893ee1285375f5c02f19701c1c2
BLAKE2b-256 checksum
How to use checksums
902815dd6776edd61afbd2a5a71c01f600e3fdd42c09d150af0b31b7703bcec8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.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 Oct 18, 2026.

Transparency log

Release files / ernie_renderer-0.2.0.dev45-cp311-cp311-manylinux_2_34_x86_64.whl

Download URL ernie_renderer-0.2.0.dev45-cp311-cp311-manylinux_2_34_x86_64.whl
Size 109.2 kB
Tags CPython 3.11 Linux glibc 2.34+ x86-64
SHA-256 checksum
How to use checksums
0d6a0e8b1dd6b2e28ddf8c93058a4d613b0043c903be86b83ef488a429037105
BLAKE2b-256 checksum
How to use checksums
41a4627c88ff0ba90bb572386c0f379896a752076fbb969ebef3d642257fa01b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.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 Oct 18, 2026.

Transparency log

Release files / ernie_renderer-0.2.0.dev45-cp311-cp311-manylinux_2_34_aarch64.whl

Download URL ernie_renderer-0.2.0.dev45-cp311-cp311-manylinux_2_34_aarch64.whl
Size 99.3 kB
Tags CPython 3.11 Linux glibc 2.34+ ARM64
SHA-256 checksum
How to use checksums
9323179b761d9618069e3c6b6f8f8fa7826aa56ca7a95af39e612397c647ab11
BLAKE2b-256 checksum
How to use checksums
699b8d49929580d42801c0e02421840db6c28532b743f5d637dbe0211cb9b3b3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.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 Oct 18, 2026.

Transparency log

Release files / ernie_renderer-0.2.0.dev45-cp311-cp311-macosx_14_0_arm64.whl

Download URL ernie_renderer-0.2.0.dev45-cp311-cp311-macosx_14_0_arm64.whl
Size 64.0 kB
Tags CPython 3.11 macOS 14.0+ ARM64
SHA-256 checksum
How to use checksums
7d65bf698365732076fe3f65f283139964870739cf3b74537da40dc4de8128f0
BLAKE2b-256 checksum
How to use checksums
dec66599260d21c178bec22728ff3c7da744867919fc61b7fe3a878a939b9fea
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.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 Oct 18, 2026.

Transparency log

Release files / ernie_renderer-0.2.0.dev45-cp310-cp310-win_amd64.whl

Download URL ernie_renderer-0.2.0.dev45-cp310-cp310-win_amd64.whl
Size 293.3 kB
Tags CPython 3.10 Windows x86-64
SHA-256 checksum
How to use checksums
9eaf4b39a0c580e80213137b73560d7f77ff399591ae9fe75fb7ddb44a5ad01e
BLAKE2b-256 checksum
How to use checksums
6860950c7c2ec28e6bd63f1adb9a8eb59b5316aa1bfa0e2d67d9d5c6537603fe
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.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 Oct 18, 2026.

Transparency log

Release files / ernie_renderer-0.2.0.dev45-cp310-cp310-manylinux_2_34_x86_64.whl

Download URL ernie_renderer-0.2.0.dev45-cp310-cp310-manylinux_2_34_x86_64.whl
Size 108.9 kB
Tags CPython 3.10 Linux glibc 2.34+ x86-64
SHA-256 checksum
How to use checksums
940fa42cee714bcdd21629b05ce4c673b5debfea83fe3e99fc9dde06a6c0cc6b
BLAKE2b-256 checksum
How to use checksums
8bfbb94c86843d782ae101c4ff95bdb46838e516e929dd78dab85d87085481d8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.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 Oct 18, 2026.

Transparency log

Release files / ernie_renderer-0.2.0.dev45-cp310-cp310-manylinux_2_34_aarch64.whl

Download URL ernie_renderer-0.2.0.dev45-cp310-cp310-manylinux_2_34_aarch64.whl
Size 98.9 kB
Tags CPython 3.10 Linux glibc 2.34+ ARM64
SHA-256 checksum
How to use checksums
f48d43a947868b90e15d0e2d1852d75a12d9ba41e2e2cdbb45dc654b88a37ae4
BLAKE2b-256 checksum
How to use checksums
cde5ebccd554d4ab917dea44ea4d755ee13939bd8b2444f0a00fbf3ad766a703
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.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 Oct 18, 2026.

Transparency log

Release files / ernie_renderer-0.2.0.dev45-cp310-cp310-macosx_14_0_arm64.whl

Download URL ernie_renderer-0.2.0.dev45-cp310-cp310-macosx_14_0_arm64.whl
Size 63.4 kB
Tags CPython 3.10 macOS 14.0+ ARM64
SHA-256 checksum
How to use checksums
a95c0e5a91c64d5ff10f55bb082865e0bfbe3bdbda05b4eb8b976f5a4ed2da00
BLAKE2b-256 checksum
How to use checksums
2ace20f19f3eeba6518180da44c76afe3a318cef8cf931485fda1b9537941ce6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.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 Oct 18, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.2.0.dev45 This release

13 release 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