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.dev76

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

Built distributions (wheels)

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

Total release size: 238.0 MB

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

Download URL ernie_renderer-0.2.0.dev76.tar.gz
Size 2.6 MB
Tags Source
SHA-256 checksum
How to use checksums
c925c83ccca64fc40b2bee2f53b7c25d1dc7759add3df01a7b7c976ccd567033
BLAKE2b-256 checksum
How to use checksums
2c17570f8b9732641bab55aed29b29c3cb731c6988af8c6ae9ed81caa58b9077
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.dev76-cp312-abi3-win_amd64.whl

Download URL ernie_renderer-0.2.0.dev76-cp312-abi3-win_amd64.whl
Size 14.7 MB
Tags CPython 3.12 Windows x86-64 abi3
SHA-256 checksum
How to use checksums
1bc4058bc1032f2e9fd2ed23c3415917e28bcbb9dedb38db834d465ff7cdb3e2
BLAKE2b-256 checksum
How to use checksums
3f4ab253ce76af55fb0a5aed97b648b1b01d55dffba49a47e166688aa3709e9a
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.dev76-cp312-abi3-manylinux_2_34_x86_64.whl

Download URL ernie_renderer-0.2.0.dev76-cp312-abi3-manylinux_2_34_x86_64.whl
Size 18.6 MB
Tags CPython 3.12 Linux glibc 2.34+ x86-64 abi3
SHA-256 checksum
How to use checksums
0bcab9d8d1c4b2679b37b75369f6811887e316d6e8ed4db005348947604002d6
BLAKE2b-256 checksum
How to use checksums
ea4949f2faa0ae11f220640674a92cb5020cc69de093d14643dd4e5862c4d893
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.dev76-cp312-abi3-manylinux_2_34_aarch64.whl

Download URL ernie_renderer-0.2.0.dev76-cp312-abi3-manylinux_2_34_aarch64.whl
Size 18.0 MB
Tags CPython 3.12 Linux glibc 2.34+ ARM64 abi3
SHA-256 checksum
How to use checksums
faa47a3dac66fc47f86e8f0a358bf76dfc471b1760de079c06fcc5e85c4e7050
BLAKE2b-256 checksum
How to use checksums
1ea6640d811119933fddda131742858bed5db31a9869b12021fed45e6f09d4eb
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.dev76-cp312-abi3-macosx_26_0_arm64.whl

Download URL ernie_renderer-0.2.0.dev76-cp312-abi3-macosx_26_0_arm64.whl
Size 27.3 MB
Tags CPython 3.12 abi3 macOS 26.0+ ARM64
SHA-256 checksum
How to use checksums
3751238a11481504229210dc8a1c8bf5cc0d4c2619201e537be9f5bda82d5c83
BLAKE2b-256 checksum
How to use checksums
9237928dde523bea164487ab3e9a74ffeb8b09b24ff9d2cd2e58e03f79e2cbf4
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.dev76-cp311-cp311-win_amd64.whl

Download URL ernie_renderer-0.2.0.dev76-cp311-cp311-win_amd64.whl
Size 14.7 MB
Tags CPython 3.11 Windows x86-64
SHA-256 checksum
How to use checksums
3cfb33033552bcfd324c63fcd015ee4bd23c601c4471d5835304742e2ec459e1
BLAKE2b-256 checksum
How to use checksums
186a4e517bd3f8a7fd65e21f4eaf52e71470b72ad0fa45daf16e0bc0ea5715a4
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.dev76-cp311-cp311-manylinux_2_34_x86_64.whl

Download URL ernie_renderer-0.2.0.dev76-cp311-cp311-manylinux_2_34_x86_64.whl
Size 18.6 MB
Tags CPython 3.11 Linux glibc 2.34+ x86-64
SHA-256 checksum
How to use checksums
7f1c5f1bc0fe87c89d1f4e9e31a0c22d3d7243a7fa2a1998af6905043c0204b5
BLAKE2b-256 checksum
How to use checksums
49984c4d0dfc03cefa7596664e6e31329be6407c5e6eef3311ab9d8056703fe2
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.dev76-cp311-cp311-manylinux_2_34_aarch64.whl

Download URL ernie_renderer-0.2.0.dev76-cp311-cp311-manylinux_2_34_aarch64.whl
Size 18.0 MB
Tags CPython 3.11 Linux glibc 2.34+ ARM64
SHA-256 checksum
How to use checksums
d7a53e7f5646e3cb255df071c2f24eecae2e3e0deafb2c0fdf537eadbc1e26f6
BLAKE2b-256 checksum
How to use checksums
4f69520ca0e3099099ecec97ca945f4661d50fcc8e7b86b4649d1ef161eab7e0
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.dev76-cp311-cp311-macosx_26_0_arm64.whl

Download URL ernie_renderer-0.2.0.dev76-cp311-cp311-macosx_26_0_arm64.whl
Size 27.3 MB
Tags CPython 3.11 macOS 26.0+ ARM64
SHA-256 checksum
How to use checksums
c2cfd5e8956b0d24f921ead2529c6eca57dab1f38a7ae48408e822e9f2f21b26
BLAKE2b-256 checksum
How to use checksums
809738ee587b4372e322c6667d611d9062c05f9602580554dab9c4dba8b8c8e4
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.dev76-cp310-cp310-win_amd64.whl

Download URL ernie_renderer-0.2.0.dev76-cp310-cp310-win_amd64.whl
Size 14.7 MB
Tags CPython 3.10 Windows x86-64
SHA-256 checksum
How to use checksums
ca9f9e27c67474aa47010e695dad4934924875c6c893ca3b3f30114c4caf4723
BLAKE2b-256 checksum
How to use checksums
7f2f5265fafd205ac497d0bcd2a835dd02db6b01e063d67ff40fb78647e2b600
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.dev76-cp310-cp310-manylinux_2_34_x86_64.whl

Download URL ernie_renderer-0.2.0.dev76-cp310-cp310-manylinux_2_34_x86_64.whl
Size 18.6 MB
Tags CPython 3.10 Linux glibc 2.34+ x86-64
SHA-256 checksum
How to use checksums
2c792bd067a8b3e580618b00cc27bfd39abdba63b732abb74dc942907d607856
BLAKE2b-256 checksum
How to use checksums
d618465f22c4bc324ba1ed0036d94ceaf70611374f9afbb254273368a783298f
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.dev76-cp310-cp310-manylinux_2_34_aarch64.whl

Download URL ernie_renderer-0.2.0.dev76-cp310-cp310-manylinux_2_34_aarch64.whl
Size 18.0 MB
Tags CPython 3.10 Linux glibc 2.34+ ARM64
SHA-256 checksum
How to use checksums
1c0d6c6e595d821a916f7d2892bf4f763dfda424ad254564012422e4c9e8cf61
BLAKE2b-256 checksum
How to use checksums
e281eb1a196c26f767c3a6e8f49ef4714f4cbcbf18d99a34930a33d8fd9ce711
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.dev76-cp310-cp310-macosx_26_0_arm64.whl

Download URL ernie_renderer-0.2.0.dev76-cp310-cp310-macosx_26_0_arm64.whl
Size 27.3 MB
Tags CPython 3.10 macOS 26.0+ ARM64
SHA-256 checksum
How to use checksums
f5f6efcad1cf33a10b7c61e76a3105114c91ee38c836ae986c637bf250c16bc2
BLAKE2b-256 checksum
How to use checksums
e1a9f74d34f4f7bec2afdad09e10d04a478805f4c6701e12006f8c419587f6b4
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.dev76 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