From 0fe39181fbb93e48bc956266447016b2206276f2 Mon Sep 17 00:00:00 2001 From: PavelSharp Date: Mon, 16 Feb 2026 18:47:29 +0300 Subject: [PATCH 1/5] webver: Add webversion files. Includes: - showcase shell - minimal shell - unofficial Nuklear logo - emscripten logo - Readme.md - other minor files --- webver/Readme.md | 11 ++ webver/site/emscripten_logo.png | Bin 0 -> 24901 bytes webver/site/favicon.ico | Bin 0 -> 1150 bytes webver/site/index.html | 295 ++++++++++++++++++++++++++++ webver/site/minshell.html | 67 +++++++ webver/site/nuklear_logo.png | Bin 0 -> 12159 bytes webver/site/nuklear_logo_readme.txt | 1 + 7 files changed, 374 insertions(+) create mode 100644 webver/Readme.md create mode 100644 webver/site/emscripten_logo.png create mode 100644 webver/site/favicon.ico create mode 100644 webver/site/index.html create mode 100644 webver/site/minshell.html create mode 100644 webver/site/nuklear_logo.png create mode 100644 webver/site/nuklear_logo_readme.txt diff --git a/webver/Readme.md b/webver/Readme.md new file mode 100644 index 000000000..8f7e57adc --- /dev/null +++ b/webver/Readme.md @@ -0,0 +1,11 @@ +Webversion notes +=== + +1. **Folder Structure** + + We use the `site` subfolder to store all public webversion files. + Current folder contains **internal** files for webversion support that do not need to be published. + +2. **Update Policy** + + The webversion is auto-updated through CI/CD workflow scripts. Any push triggers an automated build and deployment process, so no manual steps are required. diff --git a/webver/site/emscripten_logo.png b/webver/site/emscripten_logo.png new file mode 100644 index 0000000000000000000000000000000000000000..8bb832f3453455c96e1322caed0131b85dde4966 GIT binary patch literal 24901 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 Dy4Y0@ literal 0 HcmV?d00001 diff --git a/webver/site/favicon.ico b/webver/site/favicon.ico new file mode 100644 index 0000000000000000000000000000000000000000..1263aeb15fac962d2084f3df15a5e8502c034d2a GIT binary patch literal 1150 zcmb7CO-~b16nzAuU9w^eD>L(^v?Mff215yjx~8u97L^*;0xOlU#T0Bz+t{i<0K(VG zn1LX&cHzPjy5k49ut}2=GtK4PXj^RU5^#7cydC}{y+_Xs?{nnSBKIxyj(rUaivmW{qLLf@Nso7 zM8d<|yo-4hooyTIa=+_VZdOlz9_sLw&H8if`x6)^`IYRAkk(0LV zc=OMaq=Wyh&o9UKZ3p)!@A*A|JB)`%C?8ExA-Z-gm@^WJ;qGLr*?-asU?1*d^d|SH z-fw#Bj&9IQ|2Ut=7xYcDe;YNhN5<)Oyw}bGZ4Q5=Z}Dw91U7~X^vZcjcF^|l-!%09 xXjL6NA|FKlJ-mM5d@783EYqCRxg4K&3vqT=h@*BPR@&;g%u#cdXD(}4djS%37?1z} literal 0 HcmV?d00001 diff --git a/webver/site/index.html b/webver/site/index.html new file mode 100644 index 000000000..9de4c3404 --- /dev/null +++ b/webver/site/index.html @@ -0,0 +1,295 @@ + + + + + + Nuklear Emscripten Demo + + + + + + + + + + + +
+ +
+
+ +
+
+
+ +
+
+ + + diff --git a/webver/site/minshell.html b/webver/site/minshell.html new file mode 100644 index 000000000..ead8a0724 --- /dev/null +++ b/webver/site/minshell.html @@ -0,0 +1,67 @@ + + + + + + Nuklear Emscripten Demo with minimal shell + + + + + + + + + +
+ +
+ + diff --git a/webver/site/nuklear_logo.png b/webver/site/nuklear_logo.png new file mode 100644 index 0000000000000000000000000000000000000000..ceaa00977f5cd1ca7c2de7c9b3a088f272fc11aa GIT binary patch literal 12159 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 Date: Mon, 16 Feb 2026 18:48:51 +0300 Subject: [PATCH 2/5] webver: Add webver target in Makefile, fix echo output bug, refactoring --- Makefile | 40 +++++++++++++++++++++++++++++----------- 1 file changed, 29 insertions(+), 11 deletions(-) diff --git a/Makefile b/Makefile index 0bf29ab51..bbbe5eeed 100644 --- a/Makefile +++ b/Makefile @@ -5,9 +5,18 @@ ## path stuff DOCS_PATH:=./doc +# Convenience shortcut to docs output path (as defined in Doxyfile) +DOCS_OUT:=$(DOCS_PATH)/html + DEMO_PATH=demo SRC_PATH=src +WEBVER_BACKEND:=./demo/sdl3_renderer +WEBVER_SITE:=./webver/site +WEBVER_OUT:=$(DOCS_OUT)/webver +WEBVER_CFLAGS:=-O2 -DINCLUDE_ALL -sEXPORTED_RUNTIME_METHODS=requestFullscreen +#Possible choice: ccall,cwrap,requestFullscreen,FS +WEBVER_CFLAGS+=${CFLAGS} ## Documents settings DOXYFILE:=$(DOCS_PATH)/Doxyfile @@ -37,15 +46,16 @@ DEMO_LIST = $(shell find $(DEMO_PATH) -type f -name Makefile -printf "%h ") ###################################################################################### -.PHONY: usage all demos $(DEMO_LIST) +.PHONY: usage all demos webver $(DEMO_LIST) usage: - echo "make docs to create documentation" - echo "make nuke to rebuild the single header nuklear.h from source" - echo "make demos to build all of the demos" - echo "make all to re-pack the header and create documentation" + @echo "make docs to create documentation" + @echo "make webver to build webversion on SDL3 + Emscripten (try to run 'embuilder build sdl3' if first time)" + @echo "make nuke to rebuild the single header nuklear.h from source" + @echo "make demos to build all of the demos" + @echo "make all to re-pack the header and create documentation" -all: docs nuke demos +all: docs webver nuke demos demos: $(DEMO_LIST) @@ -57,14 +67,12 @@ nuke: $(addprefix $(SRC_PATH)/, $(SRC)) - - ######################################################################################## ## Docs -docs: $(DOCS_PATH)/html/index.html +docs: $(DOCS_OUT)/index.html -$(DOCS_PATH)/html/index.html: $(DOCS_PATH)/doxygen-awesome-css/doxygen-awesome.css $(DOXYFILE) +$(DOCS_OUT)/index.html: $(DOCS_PATH)/doxygen-awesome-css/doxygen-awesome.css $(DOXYFILE) doxygen $(DOXYFILE) $(DOXYFILE): @@ -75,6 +83,16 @@ $(DOCS_PATH)/doxygen-awesome-css/doxygen-awesome.css: +######################################################################################## +## webver + +webver: + mkdir -p $(WEBVER_OUT) + emmake make -C $(WEBVER_BACKEND) CFLAGS="$(WEBVER_CFLAGS)" BIN=$(abspath $(WEBVER_OUT)/demo_sdl3_renderer.js) TEMPDIR=$(abspath $(WEBVER_OUT)) + cp -r $(WEBVER_SITE)/* $(WEBVER_OUT)/ +#[NOTE]We pass TEMPDIR directly for hide a potential issue + + ######################################################################################## ## Demos @@ -87,4 +105,4 @@ $(DEMO_LIST): ## Utility helpers clean: - rm -rf $(DOCS_PATH)/html $(OUTPUT) + rm -rf $(DOCS_OUT) $(OUTPUT) From 6e147a5331884b75d7c6fcbc9f9bc347a0d4ff3a Mon Sep 17 00:00:00 2001 From: PavelSharp Date: Mon, 16 Feb 2026 18:51:19 +0300 Subject: [PATCH 3/5] webver: Configure docs.yml to auto-deploy webversion --- .github/workflows/ccpp.yml | 2 +- .github/workflows/docs.yml | 34 ++++++++++++++++++++++++---------- 2 files changed, 25 insertions(+), 11 deletions(-) diff --git a/.github/workflows/ccpp.yml b/.github/workflows/ccpp.yml index 7bd3efbd7..4d5a781a6 100644 --- a/.github/workflows/ccpp.yml +++ b/.github/workflows/ccpp.yml @@ -1,4 +1,4 @@ -name: C/C++ CI +name: Checkers on: [push, pull_request] diff --git a/.github/workflows/docs.yml b/.github/workflows/docs.yml index bcb5701e4..ebdd2a0e9 100644 --- a/.github/workflows/docs.yml +++ b/.github/workflows/docs.yml @@ -1,22 +1,36 @@ -name: Documentation on github.io +name: Docs, Webverion and Deploy -on: - push: - branches: [ master ] +on: [push, pull_request] jobs: - build-documentation: + build: runs-on: ubuntu-latest steps: - name: checkout uses: actions/checkout@v4 - - name: apt-update - run: sudo apt-get update -qq - - name: apt-get doxygen - run: sudo apt-get install -y doxygen + #Documentation + - name: Install packages for docs + run: | + sudo apt-get update -qq + sudo apt-get install -y doxygen - name: build doc run: make docs - - name: deploy + #Web-version + - name: Install packages for webver + run: | + sudo apt-get update -qq + sudo apt-get install -y make + - name: Setup Emscripten SDK + uses: mymindstorm/setup-emsdk@v14 + - name: Verify Emscripten + run: emcc -v + - name: Build SDL3 port for Emscripten + run: embuilder build sdl3 + - name: Build web-version + run: make webver + #Deploy to GitHub Pages + - name: Deploy to GitHub Pages + if: ${{ github.event_name == 'push' && (github.ref == 'refs/heads/master' || github.ref == 'refs/heads/feat/webver') }} uses: peaceiris/actions-gh-pages@v4 with: github_token: ${{ secrets.GITHUB_TOKEN }} From 788bd1cd2ae4dbbba90cb301169fa717de026d0b Mon Sep 17 00:00:00 2001 From: PavelSharp Date: Mon, 16 Feb 2026 18:50:12 +0300 Subject: [PATCH 4/5] webver: Mention webversion in src/HEADER.md and in Readme.md --- Readme.md | 2 ++ src/HEADER.md | 4 ++++ 2 files changed, 6 insertions(+) diff --git a/Readme.md b/Readme.md index e535a5ec7..b109adc9f 100644 --- a/Readme.md +++ b/Readme.md @@ -11,6 +11,8 @@ draw commands describing primitive shapes as output. So instead of providing a layered library that tries to abstract over a number of platform and render backends, it focuses only on the actual UI. +Try Nuklear in Browser + ## Features - Immediate-mode graphical user interface toolkit diff --git a/src/HEADER.md b/src/HEADER.md index 60b24788c..33b081a61 100644 --- a/src/HEADER.md +++ b/src/HEADER.md @@ -34,6 +34,10 @@ commands describing primitive shapes as output. So instead of providing a layered library that tries to abstract over a number of platform and render backends it only focuses on the actual UI. +Try Nuklear in Browser + +Nuklear in a minimal shell is also provided for compatibility and testing + ## Highlights - Graphical user interface toolkit - Single header library From ba79b047ea2b0e93ab6a378896487b4e91a58061 Mon Sep 17 00:00:00 2001 From: PavelSharp Date: Sun, 22 Feb 2026 17:01:29 +0300 Subject: [PATCH 5/5] webver: improve documentation and naming consistency - Replace inconsistent "web-version" with "webversion" - Expand webver/Readme.md with terminology and logo sections, use headings instead of a list - Remove nuklear_logo_readme.txt --- .github/workflows/docs.yml | 4 ++-- webver/Readme.md | 21 ++++++++++++++++----- webver/site/nuklear_logo_readme.txt | 1 - 3 files changed, 18 insertions(+), 8 deletions(-) delete mode 100644 webver/site/nuklear_logo_readme.txt diff --git a/.github/workflows/docs.yml b/.github/workflows/docs.yml index ebdd2a0e9..bea97e11a 100644 --- a/.github/workflows/docs.yml +++ b/.github/workflows/docs.yml @@ -15,7 +15,7 @@ jobs: sudo apt-get install -y doxygen - name: build doc run: make docs - #Web-version + #Webversion - name: Install packages for webver run: | sudo apt-get update -qq @@ -26,7 +26,7 @@ jobs: run: emcc -v - name: Build SDL3 port for Emscripten run: embuilder build sdl3 - - name: Build web-version + - name: Build webversion run: make webver #Deploy to GitHub Pages - name: Deploy to GitHub Pages diff --git a/webver/Readme.md b/webver/Readme.md index 8f7e57adc..24f41826d 100644 --- a/webver/Readme.md +++ b/webver/Readme.md @@ -1,11 +1,22 @@ Webversion notes === -1. **Folder Structure** +## Terminology - We use the `site` subfolder to store all public webversion files. - Current folder contains **internal** files for webversion support that do not need to be published. +**Webversion** (or **webver** for short) is a demonstration of Nuklear being run in the browser via Emscripten. +Currently it supports only the SDL3 backend, but long-term, additional backends may be added. -2. **Update Policy** +We use the consistent term **webversion** because it is already referenced across other files and may appear in user-created issues and pull requests. - The webversion is auto-updated through CI/CD workflow scripts. Any push triggers an automated build and deployment process, so no manual steps are required. +## Folder Structure + +We use the `site` subfolder to store all public webversion files. +Current folder contains **internal** files for webversion support that do not need to be published. + +## Update Policy + +The webversion is auto-updated through CI/CD workflow scripts. Any push triggers an automated build and deployment process, so no manual steps are required. + +## About Logo + +The Nuklear logo was suggested by Rafał Jopek and published in [issue #401](https://github.com/Immediate-Mode-UI/Nuklear/issues/401#issuecomment-2066737874) diff --git a/webver/site/nuklear_logo_readme.txt b/webver/site/nuklear_logo_readme.txt deleted file mode 100644 index 45dea1bcb..000000000 --- a/webver/site/nuklear_logo_readme.txt +++ /dev/null @@ -1 +0,0 @@ -Logo was suggested by Rafał Jopek and was publeshed here: https://github.com/Immediate-Mode-UI/Nuklear/issues/401#issuecomment-2066737874 \ No newline at end of file