Technical Considerations for GUI Toolkits [Discussion]

This page summarizes the projects mentioned and recommended in the original post on /r/learnprogramming

Our great sponsors
  • WorkOS - The modern identity platform for B2B SaaS
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • SaaSHub - Software Alternatives and Reviews
  • GLFW

    A multi-platform library for OpenGL, OpenGL ES, Vulkan, window and input

  • Types of tools for creating a gui (and how those tools approximately work): 1. Utilize the native _graphical interface API_, and depending on the platform, they have specific layers to interface: * Wayland, X11, for Linux * [GDI]( for windows * [Quartz](\_(graphics\_layer)) for macOS Example - GTK uses [wayland]( ([source code]( [X11]( ([source code]( GDI ([source code]( Quartz ([source code]( [How to use wayland display server]( (TODO missing "animation" section) 2. Utilize opengl _or other low level graphics api's_ with window context, use GPU to render widgets * Window context manager - [glfw](, [sdl]( * contexts and surfaces, reading input, handling events Example: ImGui, NanoVG, Nuklear, raylib Why? Mainly used for game development, but also good for gui's. _(i haven't seen any examples that uses this method that are used for developing general-use graphical user interfaces.)_

  • markdown-live-preview

    markdown editor with live preview

  • A while ago i make myself a list of possible ways to make a GUI (im not formatting it to reddit-specific markdown, sorry, paste the following text in or something if its not readable) :

  • WorkOS

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

    WorkOS logo
NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts