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.4.1.tar.gz (18.1 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.4.1-cp310-abi3-win_amd64.whl (2.6 MB view details)

Uploaded CPython 3.10+Windows x86-64

kymostudio_core-0.4.1-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.7 MB view details)

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

kymostudio_core-0.4.1-cp310-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (2.6 MB view details)

Uploaded CPython 3.10+manylinux: glibc 2.17+ ARM64

kymostudio_core-0.4.1-cp310-abi3-macosx_11_0_arm64.whl (2.4 MB view details)

Uploaded CPython 3.10+macOS 11.0+ ARM64

kymostudio_core-0.4.1-cp310-abi3-macosx_10_12_x86_64.whl (2.6 MB view details)

Uploaded CPython 3.10+macOS 10.12+ x86-64

File details

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

File metadata

  • Download URL: kymostudio_core-0.4.1.tar.gz
  • Upload date:
  • Size: 18.1 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.4.1.tar.gz
Algorithm Hash digest
SHA256 ee0e480c23f3747dc96aaf7b41f9bce0728d7b00d1491578f595bb8d8afae399
MD5 a42cdc364354c509242054731ceae5ac
BLAKE2b-256 656a5cf314c6fd341d152ce8f0de14a11f8c973e60a4a79df95de67c27cde6ac

See more details on using hashes here.

Provenance

The following attestation bundles were made for kymostudio_core-0.4.1.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.4.1-cp310-abi3-win_amd64.whl.

File metadata

File hashes

Hashes for kymostudio_core-0.4.1-cp310-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 2fe070a6c6bf35ef59c7ba363cc70df399832f1abfdc26b899654905c1209a92
MD5 72808d152d388261f74d6714756a00c0
BLAKE2b-256 b4145dedccc703f0ba1dc75af0f8cc98e0393804abf26172bc503eec005652eb

See more details on using hashes here.

Provenance

The following attestation bundles were made for kymostudio_core-0.4.1-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.4.1-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for kymostudio_core-0.4.1-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 95c3d56a79b4ef9f0518054b8058a2a171d5ea7700ba9f4457187f05209901f4
MD5 fca04552e00af6b97ae8528601f704b2
BLAKE2b-256 bd21cff4a7fe87d075e39053ff800b9841270b866d1afc44e76b8b5047e21945

See more details on using hashes here.

Provenance

The following attestation bundles were made for kymostudio_core-0.4.1-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.4.1-cp310-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for kymostudio_core-0.4.1-cp310-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 bf7a7113e831189208c7cf45253a68473ac62df5007f049225ea5d0b0d305c78
MD5 906deda4bf59864b7f93f733009cc2e3
BLAKE2b-256 b00784a1d2300f1c1075eb4eacd501e5f561c32cdee769a45292afd461f71ac6

See more details on using hashes here.

Provenance

The following attestation bundles were made for kymostudio_core-0.4.1-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.4.1-cp310-abi3-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for kymostudio_core-0.4.1-cp310-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 ae58b6b6ed64a553dcaa765977f5569d15a6dd605d7f8e1887b229184483f063
MD5 1fa0093ffd5dfba947522a2490f28ae6
BLAKE2b-256 25b63ea9c6037f6ed9b73200b3056ca9007dadbb230fc215180d63e8d431efde

See more details on using hashes here.

Provenance

The following attestation bundles were made for kymostudio_core-0.4.1-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.4.1-cp310-abi3-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for kymostudio_core-0.4.1-cp310-abi3-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 84d2db5c20707df420f240b66c3265348d43ace3804bac8b892a1f28400e71bd
MD5 d12ed640ee23a492687a2d72d2669a0b
BLAKE2b-256 b10795a33212f3ce71747d286903506531536a9c25cce8b2cd6c6eb40ff47580

See more details on using hashes here.

Provenance

The following attestation bundles were made for kymostudio_core-0.4.1-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