Immediate-Mode-UI / Immediate-Mode-UI/Nuklear
Custom prefix to all global symbols (i.e. functions).
- Dominant language
- C
- Stars
- 11.4k
- Forks
- 686
- Avg merge
- 4d 1h
- Merged PRs (30d)
- 3
Description
Hi,
at the MangoHud we use ImGUI right now, but there is an issue that mangohud library is dynamically linking to unknown program, possibly written in different C++ abi, C++ library or compiler, etc, which causes issues sometimes for older (or newer) programs (i.e. games).
So, pure C version, like Nuklear sounds very interesting. However, to reduce possible conflicts it would be even nicer if we can ensure no symbols are visible, or make sure there are no symbol clashes. Having option to prefix all global symbols (i.e. functions and global variables) for Nuklear, would be pretty good approach, to ensure even if the application we are linking to uses Nuklear, we don't have conflicts, and two instances of these libraries can be together without issues.
Contributor guide
Research direction
Start by inspecting Nuklear's single-header C library and cataloguing its global functions and variables. Review how a configurable prefix could apply consistently without symbol clashes, then define completion as two prefixed Nuklear instances or an application using Nuklear coexisting without conflicting global symbols.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- c
- Domain
- frontend
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 25/100