MetalNanoVG - The Metal port of NanoVG.

  •        222

MetalNanoVG is the native Metal port of NanoVG that tries to get the most out of Apple's Graphics APIs. Done.



Related Projects

nanovg - Antialiased 2D vector drawing library on top of OpenGL for UI and visualizations.

  •    C

NanoVG is small antialiased vector graphics rendering library for OpenGL. It has lean API modeled after HTML5 canvas API. It is aimed to be a practical and fun toolset for building scalable user interfaces and visualizations. The NanoVG API is modeled loosely on HTML5 canvas API. If you know canvas, you're up to speed with NanoVG in no time.

EPS Graphics Library

  •    Java

EpsGraphics is a Java library to output EPS graphics. EpsGraphics is an extension of Graphics2D that allows you to draw to an EPS file as it was a Java graphics object. CMYK as well as RGB color models are supported.

Apache XML Graphics Commons - Common components for Apache Batik and Apache FOP

  •    Java

Apache XML Graphics Commons is a library that consists of several reusable components used by Apache Batik and Apache FOP. Many of these components can easily be used separately outside the domains of SVG and XSL-FO. You will find components such as a PDF library, an RTF library, Graphics2D implementations that let you generate PDF and PostScript files and much more.

bgfx - Cross-platform, graphics API agnostic, "Bring Your Own Engine/Framework" style rendering library

  •    C++

Cross-platform, graphics API agnostic, "Bring Your Own Engine/Framework" style rendering library. AirMech is a free-to-play futuristic action real-time strategy video game developed and published by Carbon Games.

Remotery - Single C file, Realtime CPU/GPU Profiler with Remote Web Viewer

  •    C

A realtime CPU/GPU profiler hosted in a single C file with a viewer that runs in a web browser. Windows (MSVC) - add lib/Remotery.c and lib/Remotery.h to your program. Set include directories to add Remotery/lib path. The required library ws2_32.lib should be picked up through the use of the #pragma comment(lib, "ws2_32.lib") directive in Remotery.c.

GPUImage3 - GPUImage 3 is a BSD-licensed Swift framework for GPU-accelerated video and image processing using Metal

  •    Swift

GPUImage 3 is the third generation of the GPUImage framework, an open source project for performing GPU-accelerated image and video processing on Mac and iOS. The original GPUImage framework was written in Objective-C and targeted Mac and iOS, the second iteration rewritten in Swift using OpenGL to target Mac, iOS, and Linux, and now this third generation is redesigned to use Metal in place of OpenGL. The objective of the framework is to make it as easy as possible to set up and perform realtime video processing or machine vision against image or video sources. Previous iterations of this framework wrapped OpenGL (ES), hiding much of the boilerplate code required to render images on the GPU using custom vertex and fragment shaders. This version of the framework replaces OpenGL (ES) with Metal. Largely driven by Apple's deprecation of OpenGL (ES) on their platforms in favor of Metal, it will allow for exploring performance optimizations over OpenGL and a tighter integration with Metal-based frameworks and operations.

Macaw - Powerful and easy-to-use vector graphics Swift library with SVG support

  •    Swift

Macaw is a powerful and easy-to-use vector graphics library written in Swift. Modern designs contain tons of illustrations and complex animations. Mobile developers have to spend a lot of time on converting designs into native views that will be resizable for different screens. With Macaw you can reduce development time to a minimum and describe all graphics in high level scene elements. Or even render SVG graphics right from your design tool with Macaw events and animation support.

MoltenVK - MoltenVK is an implementation of the high-performance, industry-standard Vulkan graphics and compute API, that runs on Apple's Metal graphics framework, bringing Vulkan to iOS and macOS

  •    Objective-C++

Copyright (c) 2014-2018 The Brenwill Workshop Ltd. This document is written in Markdown format. For best results, use a Markdown reader.


  •    Java

Chart construction kit for the Java(TM) platform. A small (lt;100Kb) library and framework for scientific charts and plots. It runs under JDK(TM) 1.1 and PersonalJava(TM) platforms. Renderers for Graphics context, Graphics2D context, and SVG exist.

nanogui - Minimalistic GUI library for OpenGL

  •    C++

NanoGUI is a minimalistic cross-platform widget library for OpenGL 3.x or higher. It supports automatic layout generation, stateful C++11 lambdas callbacks, a variety of useful widget types and Retina-capable rendering on Apple devices thanks to NanoVG by Mikko Mononen. Python bindings of all functionality are provided using pybind11. NanoGUI builds on GLFW for cross-platform OpenGL context creation and event handling, GLAD to use OpenGL 3.x or higher Windows, Eigen for basic vector types, and NanoVG to draw 2D primitives.

SkiaSharp - The Skia 2D Graphics library from Google exposed to

  •    CSharp

SkiaSharp is a cross-platform 2D graphics API for .NET platforms based on Google's Skia Graphics Library ( It provides a comprehensive 2D API that can be used across mobile, server and desktop models to render images.The API Documentation is available on the web to browse.

micropython-lib - Core Python libraries ported to MicroPython

  •    Python

Note that the main target of micropython-lib is a "Unix" port of the aforementioned fork of MicroPython. Actual system requirements vary per module. Majority of modules are compatible with the upstream MicroPython, though some may require additional functionality/optimizations present in the "advanced" fork. Modules not related to I/O may also work without problems on bare-metal ports, not just on "Unix" port (e.g. pyboard). micropython-lib packages are published on PyPI (Python Package Index), the standard Python community package repository: . On PyPI, you can search for MicroPython related packages and read additional package information. By convention, all micropython-lib package names are prefixed with "micropython-" (the reverse is not true - some package starting with "micropython-" aren't part of micropython-lib and were released by 3rd parties).

JMTabView - Stylish and animated tab view for iOS rendered entirely using core graphics.

  •    Objective-C

This is a dark-themed and easy to use tab view created entirely using Core Graphics, so that it is easy to drop-in to your projects and operates smoothly on iOS devices. The library itself will also be used in Alien Blue's upcoming iOS updates.

SwiftChart - Line and area chart library for iOS

  •    Swift

A simple line and area charting library for iOS. To run the example project, clone the repo, and run pod install from the Example directory first.

Bender - Easily craft fast Neural Networks on iOS! Use TensorFlow models. Metal under the hood.

  •    Swift

Bender is an abstraction layer over MetalPerformanceShaders useful for working with neural networks. Bender is an abstraction layer over MetalPerformanceShaders which is used to work with neural networks. It is of growing interest in the AI environment to execute neural networks on mobile devices even if the training process has been done previously. We want to make it easier for everyone to execute pretrained networks on iOS.

CalendarKit - 📅 Fully customizable calendar for iOS

  •    Swift

CalendarKit is a fully customizable calendar library written in Swift. It was designed to look similar to iOS Calendar app out-of-the-box, but allow complete customization when needed. To make modifications easy, CalendarKit is composed of multiple small modules. They can be used together, or on their own. There is no need to do layout, CalendarKit will take care of it. CalendarKit also creates EventViews for you and reuses them.

pencil - Pencil2D is an easy, intuitive tool to make 2D hand-drawn animations

  •    C++

Pencil2D is an animation/drawing software for Windows, macOS, Linux, and FreeBSD. It lets you create traditional hand-drawn animation (cartoon) using both bitmap and vector graphics. Pencil2D is free and open source. Nightly builds are the bleeding edge versions of Pencil2D, which contains the most recent fixes and features. The link will direct you to Google Drive, please right-click on a file and select Download. The filename is pencil2d-OS-year-month-date. We currently do not offer legacy mac or 32-bit linux nightly builds. If you have one of these systems, you will have to wait for official releases or build the program from source.