awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
memononen avatar

memononen/nanovg

0
View on GitHub↗
5,654 stars·805 forks·C·Zlib·22 views

Nanovg

NanoVG is a hardware-accelerated 2D drawing engine and C graphics primitive library. It provides a lightweight renderer designed for high-quality antialiased vector graphics using an OpenGL backend.

The engine specializes in the construction and rendering of complex geometric paths. It supports the definition of precise shapes using lines, beziers, and arcs, with integrated winding rules to create hollow areas and composite shapes.

The library covers a broad range of vector graphics capabilities, including path composition and the rendering of antialiased shapes. These tools enable the development of custom user interface components and real-time data visualizations.

Features

  • 2D Rendering Engines - Functions as a hardware-accelerated 2D rendering engine optimized for high-quality vector paths and precise geometry.
  • Stencil-Based - Uses a stencil buffer to calculate precise fragment coverage for high-quality smooth edges on vector shapes.
  • 2D Vector Graphics Libraries - Provides a high-performance C library for drawing antialiased shapes and paths in a 2D vector space.
  • Composite Path Construction - Constructs complex vector shapes by combining linear segments and Bezier curves in a path buffer.
  • Hardware-Accelerated Rendering - Offloads the composition of vector visual layers to the GPU for improved rendering performance.
  • Vector Graphics Renderers - Provides a lean interface for the high-performance rendering of antialiased vector shapes and complex geometry.
  • Tessellation Rasterizers - Converts complex paths and curves into small triangles for efficient hardware-accelerated rendering via OpenGL.
  • Path Winding Rules - Determines shape interiors and exteriors using even-odd or non-zero winding rules to support holes.
  • Real-Time Vector Rendering - Renders dynamic shapes and paths that change frame by frame while maintaining high-quality smooth edges.
  • Vector Shape Construction - Allows the precise definition of complex 2D geometries using lines, bezier curves, arcs, and holes.
  • Graphical Primitive Libraries - Offers a set of low-level C graphics primitives for composing complex shapes using lines and ellipses.
  • Rendering Backends - Implements a specialized OpenGL backend to translate high-level drawing commands into GPU instructions.
  • Vertex Buffer Caching - Stores pre-computed geometry in GPU memory to minimize data transfer between the CPU and graphics hardware.
  • Visual Data Rendering - Renders clean, scalable vector graphics and complex geometry suitable for high-performance data visualizations.
  • Custom UI Components - Provides the primitives necessary to create custom user interface elements with precise vector shapes.
  • Graphics and Rendering - OpenGL-based 2D vector drawing library for UI.
  • Graphics Libraries - OpenGL-based vector drawing library for UI and visualizations.
  • Graphics Rendering - Antialiased 2D vector drawing for UI.
  • Windows Environments - Listed in the “Windows Environments” section of the Awesome C awesome list.

Star history

Star history chart for memononen/nanovgStar history chart for memononen/nanovg

How this analysis was created: This summary and feature list were written by an AI model that read the project's README and public documentation pages. Each feature links to the documentation it came from; stars, license and language come straight from the GitHub API. The model does not read the source code, and the analysis is refreshed when the project is re-analysed. Learn more on our About page.

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Open-source alternatives to Nanovg

Similar open-source projects, ranked by how many features they share with Nanovg.
  • google/skiagoogle avatar

    google/skia

    10,762View on GitHub↗

    Skia is a high-performance 2D graphics rendering library used for drawing text, geometries, and images on digital surfaces. It functions as a hardware-accelerated graphics engine that offloads drawing operations to the GPU, a vector graphics processor for SVG and complex paths, and a typography engine for shaping and drawing characters with Unicode support. The project provides a cross-platform image codec for encoding and decoding standard image formats into raw pixel data across multiple operating systems. It also enables the development of user interfaces that maintain visual consistency a

    C++
    View on GitHub↗10,762
  • glfw/glfwglfw avatar

    glfw/glfw

    14,716View on GitHub↗

    This project is a cross-platform library designed for desktop application development, providing a unified interface for window management, input handling, and hardware-accelerated graphics. It serves as a foundational framework that abstracts platform-specific windowing protocols and graphics APIs, enabling developers to create interactive software that functions consistently across Windows, macOS, and Linux. The library distinguishes itself by providing deep integration with low-level graphics APIs, specifically OpenGL and Vulkan. It manages the complexities of graphics context initializati

    Cclinuxmacos
    View on GitHub↗14,716
  • shopify/react-native-skiaShopify avatar

    Shopify/react-native-skia

    8,424View on GitHub↗

    react-native-skia is a cross-platform graphics framework that provides a high-performance 2D graphics engine for rendering shapes, paths, and images. It functions as a vector graphics engine and UI animation toolkit, allowing for hardware-accelerated visuals across mobile and web platforms. The project is distinguished by its integration of the Skia 2D graphics library, enabling a shader and filter pipeline for complex pixel-level effects. It supports the rendering of Lottie animations exported from After Effects and the execution of animations directly on the UI thread to maintain fluid moti

    TypeScriptreactreact-nativeskia
    View on GitHub↗8,424
  • brooooooklyn/canvasBrooooooklyn avatar

    Brooooooklyn/canvas

    2,257View on GitHub↗

    Canvas is a headless vector graphics engine and two-dimensional graphics rendering library built on a native graphics library with zero system dependencies for server-side drawing. It provides a programmatic shape construction and manipulation library supporting bezier curves, boolean operations, and native rendering without requiring a display server. The library renders shapes, paths, text, and images onto virtual memory surfaces and off-screen drawing areas for server-side image generation, vector animation rendering, and PDF generation. It supports path boolean operations to compute comp

    Rustcanvasn-apinapi
    View on GitHub↗2,257
See all 30 alternatives to Nanovg→

Frequently asked questions

What does memononen/nanovg do?

NanoVG is a hardware-accelerated 2D drawing engine and C graphics primitive library. It provides a lightweight renderer designed for high-quality antialiased vector graphics using an OpenGL backend.

What are the main features of memononen/nanovg?

The main features of memononen/nanovg are: 2D Rendering Engines, Stencil-Based, 2D Vector Graphics Libraries, Composite Path Construction, Hardware-Accelerated Rendering, Vector Graphics Renderers, Tessellation Rasterizers, Path Winding Rules.

What are some open-source alternatives to memononen/nanovg?

Open-source alternatives to memononen/nanovg include: google/skia — Skia is a high-performance 2D graphics rendering library used for drawing text, geometries, and images on digital… glfw/glfw — This project is a cross-platform library designed for desktop application development, providing a unified interface… shopify/react-native-skia — react-native-skia is a cross-platform graphics framework that provides a high-performance 2D graphics engine for… brooooooklyn/canvas — Canvas is a headless vector graphics engine and two-dimensional graphics rendering library built on a native graphics… jonobr1/two.js — Two.js is a multi-backend graphics engine and vector drawing library that provides a unified API for creating… makieorg/makie.jl — Makie.jl is a high-performance Julia data visualization library and hardware-accelerated plotting engine used to…