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
  • Validation with real-world sensors and scenes.

Installation

The Python package is on PyPI as ernie-renderer (Python 3.10 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, Python 3.10+ with its development headers (or -DERNIE_BUILD_PYTHON=OFF) and a Vulkan 1.3 driver. Small dependencies are vendored; Slang and OpenEXR are fetched on first configure (see third_party/README.md).

cmake -S . -B build -DERNIE_BUILD_TESTS=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.dev127

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.dev127
File Size Uploaded
ernie_renderer-0.2.0.dev127.tar.gz 2.7 MB Details

Built distributions (wheels)

Table of built distributions (wheels) for ernie-renderer 0.2.0.dev127
File
ernie_renderer-0.2.0.dev127-cp312-abi3-win_amd64.whl CPython 3.12 abi3 Windows x86-64 Details
ernie_renderer-0.2.0.dev127-cp312-abi3-manylinux_2_34_x86_64.whl CPython 3.12 abi3 Linux glibc 2.34+ x86-64 Details
ernie_renderer-0.2.0.dev127-cp312-abi3-manylinux_2_34_aarch64.whl CPython 3.12 abi3 Linux glibc 2.34+ ARM64 Details
ernie_renderer-0.2.0.dev127-cp312-abi3-macosx_26_0_arm64.whl CPython 3.12 abi3 macOS 26.0+ ARM64 Details
ernie_renderer-0.2.0.dev127-cp311-cp311-win_amd64.whl CPython 3.11 CPython 3.11 Windows x86-64 Details
ernie_renderer-0.2.0.dev127-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.dev127-cp311-cp311-manylinux_2_34_aarch64.whl CPython 3.11 CPython 3.11 Linux glibc 2.34+ ARM64 Details
ernie_renderer-0.2.0.dev127-cp311-cp311-macosx_26_0_arm64.whl CPython 3.11 CPython 3.11 macOS 26.0+ ARM64 Details
ernie_renderer-0.2.0.dev127-cp310-cp310-win_amd64.whl CPython 3.10 CPython 3.10 Windows x86-64 Details
ernie_renderer-0.2.0.dev127-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.dev127-cp310-cp310-manylinux_2_34_aarch64.whl CPython 3.10 CPython 3.10 Linux glibc 2.34+ ARM64 Details
ernie_renderer-0.2.0.dev127-cp310-cp310-macosx_26_0_arm64.whl CPython 3.10 CPython 3.10 macOS 26.0+ ARM64 Details

Total release size: 243.1 MB

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

Download URL ernie_renderer-0.2.0.dev127.tar.gz
Size 2.7 MB
Tags Source
SHA-256 checksum
How to use checksums
986612f6b8b0117e72fb8b275220e9094066d4fee969bad6240998e3df75c7bc
BLAKE2b-256 checksum
How to use checksums
4c99505ac06b8f5ae6a72122d3d46048312c3da048f107ec92b3162ba14f289e
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.dev127-cp312-abi3-win_amd64.whl

Download URL ernie_renderer-0.2.0.dev127-cp312-abi3-win_amd64.whl
Size 15.0 MB
Tags CPython 3.12 Windows x86-64 abi3
SHA-256 checksum
How to use checksums
2d566767efb6b03783bfbd477f5cc421932aa189f1be71c329d0d06e1a4c605d
BLAKE2b-256 checksum
How to use checksums
8c0c4de2ba6ca8237bd159843ca2d29778e26ee3ccdc15b0bb7077add35ec351
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.dev127-cp312-abi3-manylinux_2_34_x86_64.whl

Download URL ernie_renderer-0.2.0.dev127-cp312-abi3-manylinux_2_34_x86_64.whl
Size 19.0 MB
Tags CPython 3.12 Linux glibc 2.34+ x86-64 abi3
SHA-256 checksum
How to use checksums
8b213d88400d09fc0b637b412a0bb7f237d8e135bac3557a35795093a1e8ffd6
BLAKE2b-256 checksum
How to use checksums
954e6c1518fb6389b9ba82e78437eff4808728b52de8fb6c006f55bd88678f67
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.dev127-cp312-abi3-manylinux_2_34_aarch64.whl

Download URL ernie_renderer-0.2.0.dev127-cp312-abi3-manylinux_2_34_aarch64.whl
Size 18.4 MB
Tags CPython 3.12 Linux glibc 2.34+ ARM64 abi3
SHA-256 checksum
How to use checksums
caede0f2515633b5c4e6bb3732d45f7a39270d3b78ceec45d5498a58127dc21c
BLAKE2b-256 checksum
How to use checksums
9d42a056d0fb11f7ead831f448e140143f014ef856159e0eda336534edc39f63
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.dev127-cp312-abi3-macosx_26_0_arm64.whl

Download URL ernie_renderer-0.2.0.dev127-cp312-abi3-macosx_26_0_arm64.whl
Size 27.6 MB
Tags CPython 3.12 abi3 macOS 26.0+ ARM64
SHA-256 checksum
How to use checksums
266a6a70e221887e138826e17fc690c4487185a13104cbb28d327fb917d2e5d8
BLAKE2b-256 checksum
How to use checksums
d90cc00a99d683834178c3f9684d10e3fc7dfb3a840b2666ed79d84bf2bbb997
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.dev127-cp311-cp311-win_amd64.whl

Download URL ernie_renderer-0.2.0.dev127-cp311-cp311-win_amd64.whl
Size 15.0 MB
Tags CPython 3.11 Windows x86-64
SHA-256 checksum
How to use checksums
cf7be893a199a2cb002c3a7961af8541fc698c497d6c96f91ac9b6ed95aad695
BLAKE2b-256 checksum
How to use checksums
6485a6d2968436ba829350bf5198a81d5533f50a73b24d436a87f1135fa7e3c4
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.dev127-cp311-cp311-manylinux_2_34_x86_64.whl

Download URL ernie_renderer-0.2.0.dev127-cp311-cp311-manylinux_2_34_x86_64.whl
Size 19.0 MB
Tags CPython 3.11 Linux glibc 2.34+ x86-64
SHA-256 checksum
How to use checksums
1d2af8208148a96b2bac2bd2120bbb6646bfbb064a543e0682496a8ce3aa2fbc
BLAKE2b-256 checksum
How to use checksums
654f6d83095fd7e707c1328799a35468ed87a0398366858eb1d098aa0f78348b
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.dev127-cp311-cp311-manylinux_2_34_aarch64.whl

Download URL ernie_renderer-0.2.0.dev127-cp311-cp311-manylinux_2_34_aarch64.whl
Size 18.4 MB
Tags CPython 3.11 Linux glibc 2.34+ ARM64
SHA-256 checksum
How to use checksums
3b1b900f956ff19490c3e7d8ad0c8e052a3d2cfff6caaf9c4d1b76e02a574594
BLAKE2b-256 checksum
How to use checksums
af2be325158036ad8bbb6f9649140d5e0ec8cd543c284c9fa7178c079447b930
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.dev127-cp311-cp311-macosx_26_0_arm64.whl

Download URL ernie_renderer-0.2.0.dev127-cp311-cp311-macosx_26_0_arm64.whl
Size 27.6 MB
Tags CPython 3.11 macOS 26.0+ ARM64
SHA-256 checksum
How to use checksums
ba84dc3a980a284de3be7d6d6bb0c3eb882ef5ff027816674597bb6975d3979c
BLAKE2b-256 checksum
How to use checksums
892fde1e5073f8d9abd22014ddbf6829dcaae758af3086ff1a68cb8d26180924
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.dev127-cp310-cp310-win_amd64.whl

Download URL ernie_renderer-0.2.0.dev127-cp310-cp310-win_amd64.whl
Size 15.0 MB
Tags CPython 3.10 Windows x86-64
SHA-256 checksum
How to use checksums
c46fedd1f26f47c827463a6b37fe3e42360a6845455977fa44130eacb9a4eac8
BLAKE2b-256 checksum
How to use checksums
41478ac671ecc92e3058ec299157d7a04d77bfab290e00d10a88a72b1ec9f509
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.dev127-cp310-cp310-manylinux_2_34_x86_64.whl

Download URL ernie_renderer-0.2.0.dev127-cp310-cp310-manylinux_2_34_x86_64.whl
Size 19.0 MB
Tags CPython 3.10 Linux glibc 2.34+ x86-64
SHA-256 checksum
How to use checksums
88b990cc6f7e82798fa144e3f7c4102816960e9a3c859141bae3922898ece056
BLAKE2b-256 checksum
How to use checksums
c66ffcccb7c6e3615e2709c3eef6b37b336509daaea933ba8082edf14e1d5ae2
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.dev127-cp310-cp310-manylinux_2_34_aarch64.whl

Download URL ernie_renderer-0.2.0.dev127-cp310-cp310-manylinux_2_34_aarch64.whl
Size 18.4 MB
Tags CPython 3.10 Linux glibc 2.34+ ARM64
SHA-256 checksum
How to use checksums
80569d18938b0590abc4718417eaf326eec762e203c3a069724beb7dbcaf2e79
BLAKE2b-256 checksum
How to use checksums
7d55d43c349f2198c14475d4fa7919753a01b5352d656475cbf6176e43be1c9a
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.dev127-cp310-cp310-macosx_26_0_arm64.whl

Download URL ernie_renderer-0.2.0.dev127-cp310-cp310-macosx_26_0_arm64.whl
Size 27.6 MB
Tags CPython 3.10 macOS 26.0+ ARM64
SHA-256 checksum
How to use checksums
107139bbcda8e4279dbff58db63364d17bd1451618bc79ba4e2e4effe572d4d3
BLAKE2b-256 checksum
How to use checksums
2cf09dceb2c91f360f95de3dc849589271670b7bc45637d85c6ff89247e1fc8b
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.dev127 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