C++ Drawing

Open-source C++ projects categorized as Drawing

Top 13 C++ Drawing Projects

  • LibreSprite

    Animated sprite editor & pixel art tool -- Fork of the last GPLv2 commit of Aseprite

    Project mention: Great news, macOS users! 🍎 | /r/LibreSprite | 2023-05-19

    We're thrilled to announce that LibreSprite is finally available for macOS! 📷📷 A big shoutout to u/Booga y u/FManga for making this possible! Download LibreSprite for macOS

  • LibreCAD

    LibreCAD is a cross-platform 2D CAD program written in C++14 using the Qt framework. It can read DXF and DWG files and can write DXF, PDF and SVG files. The user interface is highly customizable, and has dozens of translations.

    Project mention: Looking for a poor man's AutoCad | /r/civilengineering | 2023-07-05

    LibreCAD, OpenSCAD (more script based and more for solids), FreeCAD.

  • InfluxDB

    Collect and Analyze Billions of Data Points in Real Time. Manage all types of time series data in a single, purpose-built database. Run at any scale in any environment in the cloud, on-premises, or at the edge.

  • ksnip

    ksnip the cross-platform screenshot and annotation tool

    Project mention: Some might not see how much work is/was to maintain xorg server | news.ycombinator.com | 2023-11-29

    can also be used in non-KDE X11 desktop environments.

    which doesn't really explicitly say much, and in fact the only tool I could find that claimed to be able to support everything was ksnip, which seems to work fine with wlroots but beyond that https://github.com/ksnip/ksnip#known-issues outlines the situation well enough; KDE is at least only temporarily broken, but GNOME isn't going to improve because GNOME did that on purpose. Now, that readme says you can use xdg-desktop-portal, but I have a GNOME+Wayland machine on hand, and I couldn't get it to actually work. I think what's supposed to happen is that every time I do a screenshot it prompts for permission, which I wanted to verify so I could complain that that was totally unreasonable, but what actually happens is that it just fails, which is... not better. Oh, and while searching for solutions to that I found flameshot, but that just refuses to even run. So... maybe someday the portal solution will work; in the meantime, I feel comfortable describing the situation as Wayland not having a uniform working way of taking screenshots.

    [0] In particular, so we can avoid the situation from X11 where a load of drawing primitives are baked in that nobody has any use for anymore.

  • pencil

    Pencil2D is an easy, intuitive tool to make 2D hand-drawn animations. Pencil2D is open source and cross-platform. (by pencil2d)

  • Drawpile

    A collaborative drawing program

  • TinyEngine

    Tiny OpenGL Wrapper / 3D Engine in C++

    Project mention: Meandering River Erosion Simulation | /r/Simulated | 2023-01-05

    The full code is available here. Written in C++ with TinyEngine.

  • rmkit

    | remarkable app framework | https://rmkit.dev

  • Onboard AI

    Learn any GitHub repo in 59 seconds. Onboard AI learns any GitHub repo in minutes and lets you chat with it to locate functionality, understand different parts, and generate new code. Use it for free at www.getonboard.dev.

  • canvas_ity

    A tiny, single-header <canvas>-like 2D rasterizer for C++

    Project mention: The Lone Developer Problem | news.ycombinator.com | 2023-02-27

    Agreed, that sort of documentation is pure gold when done well.

    It's something I always try to pay forward by doing in my own code. For example, one of my own solo projects was an STB-style single-header -like rasterizer library for C++. I started the implementation half of the library with a short outline of the rendering pipeline's dataflow and the top-level functions responsible for each stage:


  • LibreCAD_3

    LibreCAD 3 is a next generation 2D CAD application written to be modular, with a core independent from GUI toolkits. Scripting is possible with Lua.

  • ragg

    Graphic Devices Based on AGG

  • kImageAnnotator

    Tool for annotating images

    Project mention: Spectacle - cannot find cropping tools | /r/kde | 2023-05-02

    Previously Spectacle used the kImageAnnotator library for the annotation function, so when that library got cropping support Spectacle got it too. For better or worse the new UI no longer uses that library, so I'm guessing the Spectacle devs will have to add in cropping support manually now. No clue if there are plans for it unfortunately, but I assume if work gets started on it there will be an update on that bug report.

  • diffusion-expert

    A software for drawing with stable-diffusion support

    Project mention: Introducing Consistency: OpenAI has released the code for its new one-shot image generation technique. Unlike Diffusion, which requires multiple steps of Gaussian noise removal, this method can produce realistic images in a single step. This enables real-time AI image creation from natural language | /r/StableDiffusion | 2023-04-12

    I'm working on https://github.com/rodjjo/diffusion-expert

  • Arduino-Plotter

    A simple Arduino-based DIY plotter using servo and stepper motors.

NOTE: The open source projects on this list are ordered by number of github stars. The number of mentions indicates repo mentiontions in the last 12 Months or since we started tracking (Dec 2020). The latest post mention was on 2023-11-29.

C++ Drawing related posts


What are some of the best open-source Drawing projects in C++? This list will help you:

Project Stars
1 LibreSprite 3,905
2 LibreCAD 3,770
3 ksnip 1,768
4 pencil 1,340
5 Drawpile 939
6 TinyEngine 879
7 rmkit 312
8 canvas_ity 286
9 LibreCAD_3 285
10 ragg 169
11 kImageAnnotator 70
12 diffusion-expert 20
13 Arduino-Plotter 10
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives