C++ Desktop

Open-source C++ projects categorized as Desktop

Top 23 C++ Desktop Projects

  • nodegui

    A library for building cross-platform native desktop applications with Node.js and CSS 🚀. React NodeGui : https://react.nodegui.org and Vue NodeGui: https://vue.nodegui.org

    Project mention: Brig: A user interface toolkit for Node.js, which is based on Qt for rendering | news.ycombinator.com | 2024-01-20

    This looks like it hasn't been maintained in years but there's a modern equivalent in NodeGUI [1] which also has React/Svelte/Vue implementations. Unfortunately it requires a custom build of Node that merges the libuv and Qt6 event loops so YMMV.

    It actually inspired me to write my own implementation with Svelte on top of QuickJS and Qt Widgets but the task of wrapping the entire Qt6 API in Rust proved to be intractable once I found out that most methods weren't marked Q_INVOKABLE and thus couldn't be called via reflection (requiring manual wrapping). Providing a `Document.createElement` API that created Qt Widgets with working attributes and event handling worked surprisingly well though!

    [1] https://github.com/nodegui/nodegui

  • NotepadNext

    A cross-platform, reimplementation of Notepad++

    Project mention: Open Source Windows Notepad on the Web | news.ycombinator.com | 2024-02-08

    there is another OpenSource - Cross-Platform (Windows, Linux, etc) - Notepad/Notepad++ Alternative:


  • JetBrains Dev Survey

    What’s up with the C++ ecosystem in 2023? JetBrains Developer Ecosystem Survey 2023 has given us many interesting insights. The Embedded (37%) and Games (39%) industries are already working with C++20, developers are incorporating static analysis in their CI, and ChatGPT usage among coders is flourishing. Read on for more!

  • Windows UI Library

    Windows UI Library: the latest Windows 10 native controls and Fluent styles for your applications

    Project mention: WinUI 3 is now open source | news.ycombinator.com | 2023-10-24
  • wxWidgets

    Cross-Platform C++ GUI Library

    Project mention: Building Apps with Tauri and Elixir | dev.to | 2023-10-19

    The Elixir programming language is no stranger to desktop applications as the language actually supports building them out of the box. It uses wxWidgets: a C++ library that lets developers create applications for Windows, macOS, Linux and other platforms with a single code base. But wxWidgets has a very complex API, and doesn’t solve issues that usually come with desktop applications around packaging.

  • flutter-webrtc

    WebRTC plugin for Flutter Mobile/Desktop/Web

  • ProjectReunion

    The Windows App SDK empowers all Windows desktop apps with modern Windows UI, APIs, and platform features, including back-compat support, shipped via NuGet.

    Project mention: WinUI3 + WebView2 | /r/dotnet | 2023-10-30

    The issue is described here: WebView2 does not support passing in a CoreWebView2Environment · Issue #1170 · microsoft/WindowsAppSDK (github.com)

  • desktop

    💻 Desktop sync client for Nextcloud (by nextcloud)

    Project mention: Anyone here daily drive FreeBSD as their operating system? | /r/freebsd | 2023-12-10
  • Onboard AI

    ChatGPT with full context of any GitHub repo. 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 app.getonboardai.com.

  • DirectXTK

    The DirectX Tool Kit (aka DirectXTK) is a collection of helper classes for writing DirectX 11.x code in C++

    Project mention: I need help to make SSE Display Tweaks work. | /r/skyrimmods | 2023-10-09

    LoadScreenAllow= LoadScreenBlock=All Note: In cases where only loadscreens with conditions are allowed, it is possible that none will show even if no others are available. LoadScreenFilter=false LoadScreenAllow= LoadScreenBlock=All Remove all lens flare from weather records. This is done in-memory and is not persistent. DisableWeatherLensFlare=false Disable actor fade when camera intersects the body. DisableActorFade=false Disable player fade when camera intersects the body. DisablePlayerFade=false [OSD] Enable the on-screen display. Enable=false InitiallyOn=true Comma separated list of displayed stats. fps - Framerate bare_fps - Just the framerate, no formatting frametime - Frametime bare_frametime - Just the frametime, no formatting counter - Frame counter vram - Video ram usage (used / budget) * all - Everything * Note that this line does not show total amount of memory available but rather the OS allocated budget which can vary based on how much is consumed by other applications. If usage exceeds the budget, you'll likely experience stuttering. Requires DXGI 1.4. Stats related to specific drivers are configured in their respective sections. Show=fps,vram How often the OSD updates (in seconds). UpdateInterval=0.3 Keys used used to toggle the OSD. ComboKey uses built-in constants, ToggleKey is a DX scan code (https://www.creationkit.com/index.php?title=Input\_Script) ComboKey: 1 - Left Shift 2 - Right Shift 3 - Left Control 4 - Right Control 5 - Left Alt 6 - Right Alt 7 - Left Win 8 - Right Win ComboKey=1 and ToggleKey=0xD2 is Left Shift + Insert ComboKey=1 ToggleKey=0xD2 Align the OSD. 1 - Top Left 2 - Top Right 3 - Bottom Left 4 - Bottom Right Align=1 OSD position offset (X Y). Offset=4 4 Font scale (X Y) Omit Y for uniform scaling Scale=1.0 0.9 Adjust font scale based on amount of lines drawn. AutoScale=true Scale font size based on window size. Size remains constant when resolution to window size ratio != 1, for example when playing at non-native resolutions. ScaleToWindow=true Set a custom font. You can generate bitmaps from fonts installed on your system with MakeSpriteFont. https://github.com/microsoft/DirectXTK/wiki/MakeSpriteFont Run the tool with /NoPremultiply and place files in Data\SKSE\Plugins\SDTFonts FontFile= Font and outline color (RGBA). Color=255 255 255 255 OutlineColor=0 0 0 255 Outline offset. OutlineOffset=1 "

  • corona

    Solar2D Game Engine main repository (ex Corona SDK) (by coronalabs)

    Project mention: LÖVE: a framework to make 2D games in Lua | news.ycombinator.com | 2023-09-13
  • nheko

    Desktop client for Matrix using Qt and C++20.

    Project mention: PSA: security vulnerability in qBitorrent 4.5.x webUI | /r/DataHoarder | 2023-02-26

    Look at this, notice anything different? https://github.com/Nheko-Reborn/nheko/issues/new/choose

  • DirectXMath

    DirectXMath is an all inline SIMD C++ linear algebra library for use in games and graphics apps

    Project mention: Vector math library benchmarks (C++) | /r/GraphicsProgramming | 2023-04-15

    For those unfamiliar, like I was, DXM is DirectXMath.

  • DirectXTK12

    The DirectX Tool Kit (aka DirectXTK12) is a collection of helper classes for writing DirectX 12 code in C++

  • kotatogram-desktop

    Experimental Telegram Desktop fork.

    Project mention: Can't see the Topics in a Group in Kotatogram? | /r/Telegram | 2023-04-15

    It's not dead: https://github.com/kotatogram/kotatogram-desktop/tree/patches-track

  • rbfx

    Lightweight Game Engine/Framework in C++17 with WYSIWYG Editor. Experimental C# bindings.

    Project mention: Are there any cross-platform high-level fully programmatic mobile frameworks like Apple's SceneKit, SpriteKit, and GameplayKit that do not depend on special IDEs or visual editors? | /r/gamedev | 2023-05-03

    good engines for C++ that meet your requirements https://github.com/u3d-community/U3D https://github.com/rbfx/rbfx i highly recommend taking a look at rbfx, U3D doesn't have all the fancy features that rbfx has but deep down they are the same engine almost. They are forks of Urho3D, a mature engine that has existed from the year of 2011/2010.

  • xtd

    Free open-source modern C++17 / C++20 framework to create console, GUI (forms like WinForms) and unit test applications and libraries on Microsoft Windows, Apple macOS and Linux.

    Project mention: The xtd 0.2.0 (beta) is growing 😀 | /r/xtdpro | 2023-11-13

    Website : https://gammasoft71.github.io/xtd/

  • flutter_everywhere

    Template Flutter Project for iOS, Android, Fuschica, MacOS, Windows, Linux, Web, Command Line, Chrome Extension

  • avogadrolibs

    Avogadro libraries provide 3D rendering, visualization, analysis and data processing useful in computational chemistry, molecular modeling, bioinformatics, materials science, and related areas.

  • ValliStart

    A start menu to replace the un-customizable one that you have right now.

  • phantomstyle

    Cross-platform QStyle for traditionalists

  • MontereyRainmeter

    MacOS style widget pack for Windows

    Project mention: clean or not? | /r/desktops | 2023-07-03

    I use: Monterey (Rainmeter skin): https://github.com/creewick/MontereyRainmeter

  • shell

    :shell: Convergent shell for desktops, phones and tables built with QtQuick, Wayland and Material Design (by lirios)

  • Native System Automation

    Native cross-platform system automation (by Robot)

  • TensorVox

    Desktop application for neural speech synthesis written in C++

  • WorkOS

    The modern API for authentication & user identity. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.

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 2024-02-08.

C++ Desktop related posts


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

Project Stars
1 nodegui 8,672
2 NotepadNext 7,055
3 Windows UI Library 5,923
4 wxWidgets 5,591
5 flutter-webrtc 3,881
6 ProjectReunion 3,576
7 desktop 2,737
8 DirectXTK 2,451
9 corona 2,362
10 nheko 1,710
11 DirectXMath 1,454
12 DirectXTK12 1,377
13 kotatogram-desktop 1,041
14 rbfx 714
15 xtd 684
16 flutter_everywhere 403
17 avogadrolibs 386
18 ValliStart 372
19 phantomstyle 287
20 MontereyRainmeter 239
21 shell 230
22 Native System Automation 208
23 TensorVox 198
Power Real-Time Data Analytics at Scale
Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.