Skip to main content

Type it. See it appear. Watch it animate. (Core)

Project description

kymostudio-core (Rust)

Pure-Rust SVG → PNG rasterizer core for kymostudio, built on resvg. No browser, no headless Chrome, no C/Cairo/Skia system dependencies.

One core crate, compiled to three targets from a single source via feature flags — so the Rust CLI, the Python package, and the JS/browser playground all share the exact same resvg engine (resvg is CSS-class-aware, the reason the project avoids cairosvg):

Target Feature Build tool Consumer
Native lib system-fonts (default) cargo kymostudio CLI crate
Python extension (abi3) python maturin → wheel packages/python
wasm (browser + Node) wasm wasm-pack → pkg packages/js, website playground

svg_to_png(svg: &[u8], scale: f32) -> Result<Vec<u8>, RenderError> is the one core function; each binding (src/python.rs, src/wasm.rs) is a thin façade.

CLI — kymo

The kymo command-line tool lives in the sibling kymostudio crate (a thin front-end over this core). Install it with cargo install kymostudio.

Build each target

# Native lib + tests
cargo test

# The `kymo` CLI (sibling crate)
cargo build --release --manifest-path ../kymostudio/Cargo.toml   # -> ../kymostudio/target/release/kymo

# Python wheel (abi3, one wheel for CPython ≥ 3.10)
maturin build --release --out dist        # -> dist/kymostudio_core-*-abi3-*.whl
#   import _kymostudio_core; _kymostudio_core.svg_to_png(svg_bytes, scale)

# wasm (browser + Node) — system-fonts OFF (no fs/mmap on wasm)
wasm-pack build --target web --out-dir pkg --out-name kymostudio_core \
  -- --no-default-features --features wasm
#   import { svgToPng } from './pkg/kymostudio_core.js'

CI builds and smoke-tests all of the above across Linux/macOS/Windows — see .github/workflows/rust.yml.

Library use (Rust)

let svg = std::fs::read("in.svg")?;
let png: Vec<u8> = kymostudio_core::svg_to_png(&svg, 1.0)?;
std::fs::write("out.png", png)?;

The version is kept in lockstep with the rest of the monorepo (Cargo.tomlversion).

Project details


Download files

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

Source Distribution

kymostudio_core-0.3.6.tar.gz (10.2 kB view details)

Uploaded Source

Built Distributions

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

kymostudio_core-0.3.6-cp310-abi3-win_amd64.whl (1.4 MB view details)

Uploaded CPython 3.10+Windows x86-64

kymostudio_core-0.3.6-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.5 MB view details)

Uploaded CPython 3.10+manylinux: glibc 2.17+ x86-64

kymostudio_core-0.3.6-cp310-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.5 MB view details)

Uploaded CPython 3.10+manylinux: glibc 2.17+ ARM64

kymostudio_core-0.3.6-cp310-abi3-macosx_11_0_arm64.whl (1.4 MB view details)

Uploaded CPython 3.10+macOS 11.0+ ARM64

kymostudio_core-0.3.6-cp310-abi3-macosx_10_12_x86_64.whl (1.4 MB view details)

Uploaded CPython 3.10+macOS 10.12+ x86-64

File details

Details for the file kymostudio_core-0.3.6.tar.gz.

File metadata

  • Download URL: kymostudio_core-0.3.6.tar.gz
  • Upload date:
  • Size: 10.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for kymostudio_core-0.3.6.tar.gz
Algorithm Hash digest
SHA256 6b34f35d461f9b89e5d94058799b138bf96c94b222250d49a709094e3c1d95e3
MD5 05ca48cbadbf91862572392b5adfb294
BLAKE2b-256 a4daef6a7c9e69fe04ebb2316f71de04998614b5e94981bba0558b1d74fa6e6b

See more details on using hashes here.

Provenance

The following attestation bundles were made for kymostudio_core-0.3.6.tar.gz:

Publisher: release-crate.yml on kymostudio/kymostudio

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

File details

Details for the file kymostudio_core-0.3.6-cp310-abi3-win_amd64.whl.

File metadata

File hashes

Hashes for kymostudio_core-0.3.6-cp310-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 292da9602064bcbafc875af2e5837c4ea385b33819866a5c11ba2e8bfa81c475
MD5 3cc4776843fe7307a00e29de4e1b5370
BLAKE2b-256 cccdd3d1bfa2c76e3f4efab05b615f4c08bebc27a65e0503d385ffbdd12278e8

See more details on using hashes here.

Provenance

The following attestation bundles were made for kymostudio_core-0.3.6-cp310-abi3-win_amd64.whl:

Publisher: release-crate.yml on kymostudio/kymostudio

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

File details

Details for the file kymostudio_core-0.3.6-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for kymostudio_core-0.3.6-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 1afdbd4a98b2202a4a37d4ec592c3db4a60ec2698ff2a2c15cd8c4e37d75a97a
MD5 d4b0ae11d075bb715cf69684472ae0a0
BLAKE2b-256 c035b2bf762b25f97dabe8a789ca9992453ee1622db5dcb6d06d9dd8b841664a

See more details on using hashes here.

Provenance

The following attestation bundles were made for kymostudio_core-0.3.6-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: release-crate.yml on kymostudio/kymostudio

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

File details

Details for the file kymostudio_core-0.3.6-cp310-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for kymostudio_core-0.3.6-cp310-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 26fa55a8be5aa037595c060d69f32316ad8d274f4d1c2b095aa28e0b984a4708
MD5 6a0dbdef67bd1ec2da794f8d0ac79dcd
BLAKE2b-256 263c098fcd6984ab1295dc3ac97e5b53389e39d27413ec9900b18bbeeb2a4d7c

See more details on using hashes here.

Provenance

The following attestation bundles were made for kymostudio_core-0.3.6-cp310-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: release-crate.yml on kymostudio/kymostudio

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

File details

Details for the file kymostudio_core-0.3.6-cp310-abi3-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for kymostudio_core-0.3.6-cp310-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 70058dc1243fc320b3a12fbdefeaf0da27c43759343aed6f5c7d28619473494c
MD5 cea49197a3ea3d03c49c97fc70deb72a
BLAKE2b-256 9753e5ed420cf4bf6e9886e72e5073fc867039b8e08bd9b354309b14ad99d975

See more details on using hashes here.

Provenance

The following attestation bundles were made for kymostudio_core-0.3.6-cp310-abi3-macosx_11_0_arm64.whl:

Publisher: release-crate.yml on kymostudio/kymostudio

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

File details

Details for the file kymostudio_core-0.3.6-cp310-abi3-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for kymostudio_core-0.3.6-cp310-abi3-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 e57ccd15a14d18d657d65e597f7874d78eaa920ec1de28cd57948bc885508154
MD5 ae6ba38ba55d2b378b1a8c82797a465f
BLAKE2b-256 308e255170e6a1294b53314144ec083c11c54ea67b39d0b8874315abb13ab971

See more details on using hashes here.

Provenance

The following attestation bundles were made for kymostudio_core-0.3.6-cp310-abi3-macosx_10_12_x86_64.whl:

Publisher: release-crate.yml on kymostudio/kymostudio

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

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page