Skip to main content

NovaSVG

NovaSVG Logo

License: MIT C++17 CMake codecov single header file-novasvg.h

NovaSVG is a lightweight, header-only C++17 library for parsing, manipulating, and rasterizing SVG files. It provides a clean, modern API for loading SVG documents, querying elements, applying CSS styles, and rendering to bitmaps or PNG files—all from a single include.

The library also offers a command-line interface for batch processing and automation.

✨ Features

Core Library

  • Header-only design – Single include file for easy integration
  • Modern C++17 API – Clean, type-safe interface with RAII semantics
  • SVG parsing – Load from files, strings, or memory buffers
  • Rasterization – Render to bitmaps with customizable dimensions and backgrounds
  • Element querying – CSS selector support for finding elements
  • CSS application – Apply stylesheets to modify SVG appearance
  • Transformation support – Matrix operations for scaling, rotation, translation
  • Font management – Add custom fonts for text rendering
  • Cross-platform – Works on Windows, Linux, and macOS

Command-Line Interface

  • SVG to PNG conversion – Batch convert with customizable dimensions
  • SVG information – Extract metadata, bounding boxes, and element counts
  • CSS querying – Find elements using CSS selectors
  • Style application – Apply CSS stylesheets to SVG documents

SVG Filters

  • Full filter-primitive pipeline – feGaussianBlur, feOffset, feFlood, feComposite (Over/In/Out/Atop/Xor), feMerge/feMergeNode, and the feDropShadow shorthand, with real in/in2/result chaining (SourceGraphic/SourceAlpha included) — chain primitives together to build custom effects, not just apply one at a time
  • CSS transform: property – both the SVG transform= attribute and the CSS transform: property (set via style=/a stylesheet class, including deg/rad/grad/turn units) are supported

<foreignObject> / HTML-in-SVG text

  • Plain-text extraction with real word-wrap – renders the text content of HTML embedded in <foreignObject> (tags stripped, CSS color/background-color from the HTML's own style=/class= respected, forced line breaks at <br>/<p>/<div> boundaries further greedy-wrapped by width) rather than skipping it entirely. This is what diagram tools like Mermaid.js rely on for every node/edge label; most other lightweight SVG renderers (resvg, lunasvg, cairosvg) currently render these as blank boxes — see COMPARISON.md for a from-scratch, empirical comparison. Full HTML/CSS layout (nested block layout, inline flow) is out of scope; see checklist.md.

Font matching

  • Built-in family substitution (no OS library needed) – a font-family stack like "trebuchet ms", verdana, arial, sans-serif (what Mermaid.js itself emits) is walked name by name, like a browser does: a font installed or registered under that exact name, then a metric-compatible stand-in from novasvg's own table (arial → Liberation Sans / Arimo, times new roman → Liberation Serif / Tinos, courier new → Liberation Mono / Cousine, calibri → Carlito, cambria → Caladea, …, matched case-insensitively), then the generic keywords (sans-serif, …). A name with no metric-compatible stand-in (verdana) is skipped rather than guessed. Same result on every platform and no fontconfig or any other dependency; for best fidelity install a metric-compatible family such as fonts-liberation.
  • Built-in fallback font (works with no fonts installed) – a ~40 KB Latin subset of DejaVu Sans (kerning and fi/fl/ffi ligatures kept, so text lays out exactly like the full font) is compiled in and used only as the last resort, when a generic family (sans-serif, serif, …) finds nothing else on the machine. Fonts you install or register always win. Characters outside Latin-1 and common punctuation need a system or registered font. Disable with -DNOVASVG_EMBED_DEFAULT_FONT=OFF (CMake) or by defining NOVASVG_DISABLE_EMBEDDED_FONT; regenerate with python tools/gen_default_font.py. License: data/fonts/LICENSE-DejaVu.txt.
  • @font-face-embedded fonts (raw TTF/OTF) – an SVG that embeds its own font via @font-face { src: url(data:font/ttf;base64,...) } (as opposed to just naming a font-family and hoping the system has it) gets that font loaded and used under its declared family name. WOFF/ WOFF2 aren't decoded yet — only raw TrueType/OpenType payloads.

🚀 Quick Start

C++ Usage

#include <novasvg/novasvg.h>

int main() {
    // Load SVG from file
    auto doc = novasvg::Document::loadFromFile("artwork.svg");
    if (doc) {
        // Render to bitmap (auto-sized)
        auto bitmap = doc->renderToBitmap();
        
        // Save as PNG
        bitmap.writeToPng("artwork.png");
        
        // Query elements
        auto rectangles = doc->querySelectorAll("rect");
        std::cout << "Found " << rectangles.size() << " rectangles\n";
        
        // Get document dimensions
        std::cout << "Size: " << doc->width() << "x" << doc->height() << "\n";
    }
    return 0;
}

Command-Line Usage

cmake -B build && cmake --build build
./build/novasvg input.svg              # convert is implied, no need to type it
./build/novasvg input.svg -o output.png -w 800 -H 600

See the "CLI Reference" section below for the full option list.

📦 Installation

C++ Library

As Header-Only Library

Copy the include/novasvg/ directory into your project (or grab the single-header novasvg.h from the latest release) and #include <novasvg/novasvg.h>. Every function is marked inline, so there's no separate implementation file to define a macro for — that used to be required via a detail/novasvg_impl.h + #define NOVASVG_IMPLEMENTATION, but that split no longer exists; the whole library is safe to #include from any number of translation units as-is.

Building from Source

git clone https://github.com/MohammadRaziei/novasvg.git
cd novasvg
mkdir build && cd build
cmake .. -DNOVASVG_BUILD_EXAMPLES=ON
make -j4

Command-Line Tool

The novasvg target builds automatically as part of the project (no separate flag needed) — after the build above, the binary is at build/novasvg:

sudo make install  # Optional: install system-wide

📚 API Overview

Core Classes

Document

  • loadFromFile() / loadFromData() – Load SVG documents
  • renderToBitmap() – Render to bitmap with optional dimensions
  • querySelectorAll() – Find elements using CSS selectors
  • applyStyleSheet() – Apply CSS styles
  • width() / height() – Get document dimensions
  • boundingBox() – Get document bounding box

Bitmap

  • writeToPng() – Save as PNG file or stream
  • data() – Access raw pixel data (ARGB32 Premultiplied)
  • width() / height() / stride() – Get bitmap properties
  • convertToRGBA() – Convert to RGBA format

Element

  • hasAttribute() / getAttribute() / setAttribute() – Manage element attributes
  • render() – Render element to bitmap
  • getLocalBoundingBox() / getGlobalBoundingBox() – Get element bounds
  • getLocalMatrix() / getGlobalMatrix() – Get transformation matrices

Matrix

  • translate() / scale() / rotate() / shear() – Transformation operations
  • inverse() – Matrix inversion
  • Operator * – Matrix multiplication

🖥️ CLI Reference

# Convert -- the default action, no subcommand keyword needed
# (an explicit "convert" subcommand works identically, if you prefer it)
novasvg input.svg
novasvg convert input.svg -o output.png
novasvg input.svg -w 800 -H 600         # resize
novasvg input.svg -s 2.0                # scale factor
novasvg input.svg -b FFFFFF             # background color (hex)
novasvg input.svg --style "rect { fill: red; }"
novasvg input.svg --css-file custom.css

# Info / query / batch -- real subcommands for the other actions
novasvg info document.svg
novasvg info document.svg --json
novasvg query "circle" shapes.svg
novasvg query "rect[fill='red']" shapes.svg --json
novasvg batch svg_dir/ png_dir/
Option Description
-o, --output <file> Output PNG file (default: input name with .png)
-w, --width <px> / -H, --height <px> Output dimensions
-s, --scale <factor> Scale factor (e.g. 2.0)
-b, --background-color <hex> RRGGBB or RRGGBBAA (default: transparent)
--style <css> / --css-file <file> Apply CSS before rendering

Run novasvg --help or novasvg <subcommand> --help for the complete, always-up-to-date option list.

🔧 Build Options

Option Description Default
NOVASVG_BUILD_EXAMPLES Build C++ examples PROJECT_IS_TOP_LEVEL
NOVASVG_BUILD_TESTS Build unit tests PROJECT_IS_TOP_LEVEL
NOVASVG_BUILD_PYTHON Build Python bindings PROJECT_IS_TOP_LEVEL
NOVASVG_BUILD_DOCS Build documentation with Doxygen OFF
NOVASVG_DIST_DIR Generate single-header distribution Not defined

The novasvg command-line tool itself has no build flag — it's built unconditionally alongside the library. Converting is the implied default action (novasvg input.svg works with no subcommand needed).

🧪 Examples

C++ Examples

  • examples/cpp/sample01_convert_svg_to_png.cpp – Batch convert SVGs to PNGs
  • examples/cpp/sample02_query_svg_size.cpp – Query document properties

🎯 Use Cases

  1. Graphics Applications – Embed SVG rendering in C++ applications
  2. Web Development – Server-side SVG processing and optimization
  3. Game Development – Load vector graphics for UI elements
  4. Desktop Applications – Display vector graphics in GUI applications
  5. Automation – Batch convert SVG assets with CLI tool

🔍 Performance Considerations

  • Memory efficient – Minimal overhead for header-only design
  • Fast rasterization – Optimized rendering pipeline
  • Reusable bitmaps – Create once, render multiple times
  • Appropriate sizing – Render at required resolution, not larger
  • Batch operations – Process multiple SVGs efficiently

🤝 Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

  1. Fork the repository
  2. Create a feature branch
  3. Make your changes
  4. Add tests if applicable
  5. Submit a pull request

📄 License

NovaSVG is distributed under the MIT License. See LICENSE.txt for details.

📖 Documentation

  • API Reference: Built with Doxygen (enable with -DNOVASVG_BUILD_DOCS=ON)
  • Online Documentation: https://mohammadraziei.github.io/novasvg
  • Examples: See examples/ directory
  • CLI Documentation: See the "CLI Reference" section above
  • Renderer comparison: COMPARISON.md — an empirical, same-input comparison against resvg/lunasvg/cairosvg/thorvg (filters, CSS transforms, foreignObject text handling)
  • Known gaps / roadmap: checklist.md — what's fixed, what's intentionally out of scope and why, and optimization notes for anything that's currently correct-but-not-fast

🙏 Acknowledgments

NovaSVG builds upon ideas from existing SVG libraries while maintaining a distinct architectural philosophy focused on minimalism and header-only design.

📞 Support


NovaSVG – A new star in lightweight SVG processing

Metadata

Release files for novasvg 0.10.0

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

Source distribution (sdist)

Source distribution for novasvg 0.10.0
File Size Uploaded
novasvg-0.10.0.tar.gz 8.9 MB Details

Built distributions (wheels)

Table of built distributions (wheels) for novasvg 0.10.0
File
novasvg-0.10.0-cp312-abi3-win_amd64.whl CPython 3.12 abi3 Windows x86-64 Details
novasvg-0.10.0-cp312-abi3-win32.whl CPython 3.12 abi3 Windows x86-32 Details
novasvg-0.10.0-cp312-abi3-musllinux_1_2_x86_64.whl CPython 3.12 abi3 Linux musl 1.2+ x86-64 Details
novasvg-0.10.0-cp312-abi3-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl CPython 3.12 abi3 Linux glibc 2.27+ x86-64, Linux glibc 2.28+ x86-64 Details
novasvg-0.10.0-cp312-abi3-macosx_10_15_universal2.whl CPython 3.12 abi3 macOS 10.15+ universal2 (ARM64, x86-64) Details
novasvg-0.10.0-cp311-cp311-win_amd64.whl CPython 3.11 CPython 3.11 Windows x86-64 Details
novasvg-0.10.0-cp311-cp311-win32.whl CPython 3.11 CPython 3.11 Windows x86-32 Details
novasvg-0.10.0-cp311-cp311-musllinux_1_2_x86_64.whl CPython 3.11 CPython 3.11 Linux musl 1.2+ x86-64 Details
novasvg-0.10.0-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl CPython 3.11 CPython 3.11 Linux glibc 2.27+ x86-64, Linux glibc 2.28+ x86-64 Details
novasvg-0.10.0-cp311-cp311-macosx_10_15_universal2.whl CPython 3.11 CPython 3.11 macOS 10.15+ universal2 (ARM64, x86-64) Details
novasvg-0.10.0-cp310-cp310-win_amd64.whl CPython 3.10 CPython 3.10 Windows x86-64 Details
novasvg-0.10.0-cp310-cp310-win32.whl CPython 3.10 CPython 3.10 Windows x86-32 Details
novasvg-0.10.0-cp310-cp310-musllinux_1_2_x86_64.whl CPython 3.10 CPython 3.10 Linux musl 1.2+ x86-64 Details
novasvg-0.10.0-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl CPython 3.10 CPython 3.10 Linux glibc 2.27+ x86-64, Linux glibc 2.28+ x86-64 Details
novasvg-0.10.0-cp310-cp310-macosx_10_15_universal2.whl CPython 3.10 CPython 3.10 macOS 10.15+ universal2 (ARM64, x86-64) Details
novasvg-0.10.0-cp39-cp39-win_amd64.whl CPython 3.9 CPython 3.9 Windows x86-64 Details
novasvg-0.10.0-cp39-cp39-win32.whl CPython 3.9 CPython 3.9 Windows x86-32 Details
novasvg-0.10.0-cp39-cp39-musllinux_1_2_x86_64.whl CPython 3.9 CPython 3.9 Linux musl 1.2+ x86-64 Details
novasvg-0.10.0-cp39-cp39-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl CPython 3.9 CPython 3.9 Linux glibc 2.28+ x86-64, Linux glibc 2.27+ x86-64 Details
novasvg-0.10.0-cp39-cp39-macosx_10_15_universal2.whl CPython 3.9 CPython 3.9 macOS 10.15+ universal2 (ARM64, x86-64) Details

Total release size: 40.5 MB

Release files / novasvg-0.10.0.tar.gz

Download URL novasvg-0.10.0.tar.gz
Size 8.9 MB
Tags Source
SHA-256 checksum
How to use checksums
78f3295c984cf7480a822c592d606b840c7b0a55691363deedecb316cfd53d55
BLAKE2b-256 checksum
How to use checksums
7744e7f970dc27cd0c889086053f37cf77f1197c878aed239cee6aa26602590b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / novasvg-0.10.0-cp312-abi3-win_amd64.whl

Download URL novasvg-0.10.0-cp312-abi3-win_amd64.whl
Size 1.1 MB
Tags CPython 3.12 Windows x86-64 abi3
SHA-256 checksum
How to use checksums
35f4ea2cfd37b374b048d2cdd8a4d49b2c286313ae30bc61abddabccf8633bce
BLAKE2b-256 checksum
How to use checksums
ce1c18289fe0ef6a16e1343a0570f0b1cfa1401c1907d74a20afab3c2eaff614
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / novasvg-0.10.0-cp312-abi3-win32.whl

Download URL novasvg-0.10.0-cp312-abi3-win32.whl
Size 984.7 kB
Tags CPython 3.12 Windows x86-32 abi3
SHA-256 checksum
How to use checksums
008f4240f9a391b8ed1497aaa733dab708b7f9376436911cc8f766e1d47d676b
BLAKE2b-256 checksum
How to use checksums
2e91df51ad4b05b00abd41e732f5bd9fc0f04e03d66ddb8cf0d413966680ce5e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / novasvg-0.10.0-cp312-abi3-musllinux_1_2_x86_64.whl

Download URL novasvg-0.10.0-cp312-abi3-musllinux_1_2_x86_64.whl
Size 2.7 MB
Tags CPython 3.12 Linux musl 1.2+ x86-64 abi3
SHA-256 checksum
How to use checksums
dcd71d5e435240f34b64c49aaeec092c08727ad2eba0ed4ba04c0987c64d1b91
BLAKE2b-256 checksum
How to use checksums
4fdc87cc8aff30a957343d0c6f734fe06431651b7094018d84437bb66e768baf
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / novasvg-0.10.0-cp312-abi3-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl

Download URL novasvg-0.10.0-cp312-abi3-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Size 1.2 MB
Tags CPython 3.12 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64 abi3
SHA-256 checksum
How to use checksums
eb0bb3ec8b05ea3dce913bf92218c5b5b8125489f016f9cc16e6ddd51983511d
BLAKE2b-256 checksum
How to use checksums
d0b9e640676195439415fa4555d233cac846b3fae9c7d182bf8c5e1cae536ad1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / novasvg-0.10.0-cp312-abi3-macosx_10_15_universal2.whl

Download URL novasvg-0.10.0-cp312-abi3-macosx_10_15_universal2.whl
Size 1.9 MB
Tags CPython 3.12 abi3 macOS 10.15+ universal2 (ARM64, x86-64)
SHA-256 checksum
How to use checksums
fe4b8c311c75237e29ccddd9be895c6d4c318b41b81cf6526206a79afc660190
BLAKE2b-256 checksum
How to use checksums
84f979536094411b3156dace2e6b03bcf9c9e630e7e6c33873c5935846e96319
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / novasvg-0.10.0-cp311-cp311-win_amd64.whl

Download URL novasvg-0.10.0-cp311-cp311-win_amd64.whl
Size 1.1 MB
Tags CPython 3.11 Windows x86-64
SHA-256 checksum
How to use checksums
da3cd5b97761e19c7665f9d61b5a8d943aa24bf9708bc7f66d74bd76fba91a7b
BLAKE2b-256 checksum
How to use checksums
5eacb207acc0d16ad3f9ea1aa2de9a730c818c5c662755d95bd34a9fd1bef35f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / novasvg-0.10.0-cp311-cp311-win32.whl

Download URL novasvg-0.10.0-cp311-cp311-win32.whl
Size 985.3 kB
Tags CPython 3.11 Windows x86-32
SHA-256 checksum
How to use checksums
3b09db9c96634c4e5663e147145fe73b507ca20f8da0f03866d4d8c35201d464
BLAKE2b-256 checksum
How to use checksums
7b829854e35d1a2f2b42ab5c8132f0313a20993b2a3e88f5260b44a89a2f6f20
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / novasvg-0.10.0-cp311-cp311-musllinux_1_2_x86_64.whl

Download URL novasvg-0.10.0-cp311-cp311-musllinux_1_2_x86_64.whl
Size 2.7 MB
Tags CPython 3.11 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
51b57067040dc3f2ed7ef57dc836147babf13e1380e0d0e765de3fe1d2f9c6d0
BLAKE2b-256 checksum
How to use checksums
5566fb9f752e747f369eb1401860ab5bb12db8dc8410eba5ae35df4954e774e7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / novasvg-0.10.0-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl

Download URL novasvg-0.10.0-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Size 1.2 MB
Tags CPython 3.11 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
7abc2eadccff7ffa60054dba8c666ddd72dced7a9bba30b0cdc1439630a15551
BLAKE2b-256 checksum
How to use checksums
32d72e0969b2fc89bd355da86051bdb75dee24858704ff7be7019b3f9128e419
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / novasvg-0.10.0-cp311-cp311-macosx_10_15_universal2.whl

Download URL novasvg-0.10.0-cp311-cp311-macosx_10_15_universal2.whl
Size 1.9 MB
Tags CPython 3.11 macOS 10.15+ universal2 (ARM64, x86-64)
SHA-256 checksum
How to use checksums
daea5c9bff1fb6b69fea576a576ca41630b6c79399a3b95a68cdcdf86b5fb490
BLAKE2b-256 checksum
How to use checksums
fc8369b3bf66e0a65cff54c5ad5a6af732a7b50ce3de62f8e7053283da16f404
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / novasvg-0.10.0-cp310-cp310-win_amd64.whl

Download URL novasvg-0.10.0-cp310-cp310-win_amd64.whl
Size 1.1 MB
Tags CPython 3.10 Windows x86-64
SHA-256 checksum
How to use checksums
af4ee995269ac966d4b9e36e90b8d937b5a7eb22f2a81c8bc35bb00d950bce73
BLAKE2b-256 checksum
How to use checksums
8d841a725f5e59a61c1a311aeed8d80af73d5bb77f1798b196cadf13da6551d8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / novasvg-0.10.0-cp310-cp310-win32.whl

Download URL novasvg-0.10.0-cp310-cp310-win32.whl
Size 985.1 kB
Tags CPython 3.10 Windows x86-32
SHA-256 checksum
How to use checksums
fee65dacff43013cd3776e90ea1adc8c312b7bb90e13d17789095518ea038c75
BLAKE2b-256 checksum
How to use checksums
32d863336bf37ed323edf27a919ed9fd5f8f269fd5056408587b722c5970f307
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / novasvg-0.10.0-cp310-cp310-musllinux_1_2_x86_64.whl

Download URL novasvg-0.10.0-cp310-cp310-musllinux_1_2_x86_64.whl
Size 2.7 MB
Tags CPython 3.10 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
2c64a886e286bb6a598a68247e332e4789b565387627f1669f14e79372abd844
BLAKE2b-256 checksum
How to use checksums
3ff9bf0c6b7a838b11fa06fd930b91536bc555c53b7c8c8f789fea8b96ab2727
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / novasvg-0.10.0-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl

Download URL novasvg-0.10.0-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Size 1.2 MB
Tags CPython 3.10 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
b7fe58d723fc332eff5d577642925d2311ec9ea51009ce00f4a0c2fa88f6b85e
BLAKE2b-256 checksum
How to use checksums
5b90cbdc7fed868623878e7f40c06776a1016f4f317949c50f3d15b0b79f4f4f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / novasvg-0.10.0-cp310-cp310-macosx_10_15_universal2.whl

Download URL novasvg-0.10.0-cp310-cp310-macosx_10_15_universal2.whl
Size 1.9 MB
Tags CPython 3.10 macOS 10.15+ universal2 (ARM64, x86-64)
SHA-256 checksum
How to use checksums
44b6d3f5bc7b74f451dce3d3f2d3ade5fe307b6df6b6ab89d3a6d3c4889897af
BLAKE2b-256 checksum
How to use checksums
5b0bf874aa49c8b4d8ec57097e7b9c6b1fc921925e098f228bb89d8d69b440c5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / novasvg-0.10.0-cp39-cp39-win_amd64.whl

Download URL novasvg-0.10.0-cp39-cp39-win_amd64.whl
Size 1.1 MB
Tags CPython 3.9 Windows x86-64
SHA-256 checksum
How to use checksums
b550461885c7bbe5a034fd24dd9dc706ddb66948f3124c33109b2e983123ab58
BLAKE2b-256 checksum
How to use checksums
86ca1f813c881883dcfcfa2d19d1fad943edddb65cf6c9b9f68b3a6ab74daebe
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / novasvg-0.10.0-cp39-cp39-win32.whl

Download URL novasvg-0.10.0-cp39-cp39-win32.whl
Size 966.2 kB
Tags CPython 3.9 Windows x86-32
SHA-256 checksum
How to use checksums
dc8a2a9c72cb3c9be65d977e9618b3cc5d5340e5b83c8c87234488991f01e454
BLAKE2b-256 checksum
How to use checksums
830c4f0ace377c55a35cf86f502bd0261670a7e5ef52fa00a56c509971833a96
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / novasvg-0.10.0-cp39-cp39-musllinux_1_2_x86_64.whl

Download URL novasvg-0.10.0-cp39-cp39-musllinux_1_2_x86_64.whl
Size 2.7 MB
Tags CPython 3.9 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
65e5efa156d352d1417ae6c263bc26289fa784d8f6ea14a1fe6136d38876845a
BLAKE2b-256 checksum
How to use checksums
8af2e0e5a49cd8eefe0dc830005c02df66169e8f8db93f0ca06a6789e3bf53ed
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / novasvg-0.10.0-cp39-cp39-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl

Download URL novasvg-0.10.0-cp39-cp39-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Size 1.2 MB
Tags CPython 3.9 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
814d359d6681a44d7b754b1a857549c531421b3832867a55422cd5a8dbb6a7af
BLAKE2b-256 checksum
How to use checksums
3f8ccff6e678579a00c9f81af0f550cc304b3222a7c9f1eee50140d4cb637aad
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / novasvg-0.10.0-cp39-cp39-macosx_10_15_universal2.whl

Download URL novasvg-0.10.0-cp39-cp39-macosx_10_15_universal2.whl
Size 1.9 MB
Tags CPython 3.9 macOS 10.15+ universal2 (ARM64, x86-64)
SHA-256 checksum
How to use checksums
43f806147311eebb1c3d211d9e88fb16bc06c742faa5bf7dbe60d7a53afb2703
BLAKE2b-256 checksum
How to use checksums
8d1d74f16a492688f897053581f360630f4d1b0c3cf17fc4f27ab30350138171
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release history Release notifications | RSS feed

This release

0.10.0 This release

21 release files

0.9.0

21 release files

0.7.2

21 release files

0.7.1

21 release files

0.7.0

21 release files

0.6.0

21 release files

0.5.0

21 release files

0.0.1

2 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