docs: Update README with PR links/demo badges, add CODE_OF_CONDUCT and issue templates

- README.md: Updated with live demo links, PR table, badge shields,
  backend improvement summary, and simplified structure
- CODE_OF_CONDUCT.md: Contributor Covenant v2.1
- .github/ISSUE_TEMPLATE/: Bug report and feature request templates
This commit is contained in:
Turtle Dove 2026-07-14 13:15:19 -05:00
parent 5e11619353
commit 42b5a2b2a2
4 changed files with 123 additions and 38 deletions

27
.github/ISSUE_TEMPLATE/bug_report.md vendored Normal file
View File

@ -0,0 +1,27 @@
---
name: Bug Report
about: Report a bug in imgui_xl
title: "[BUG] "
labels: bug
---
**Describe the bug**
A clear description of what the bug is.
**To Reproduce**
Steps to reproduce the behavior:
1. Go to '...'
2. Click on '...'
3. See error
**Expected behavior**
What you expected to happen.
**Environment:**
- OS: [e.g. Windows 11, Android 14]
- Backend: [e.g. OpenGL3, Vulkan, Android native]
- Branch: [master or docking]
- Commit: [hash]
**Additional context**
Any other context about the problem.

View File

@ -0,0 +1,18 @@
---
name: Feature Request
about: Suggest a feature for imgui_xl
title: "[FEATURE] "
labels: enhancement
---
**Is your feature request related to a problem?**
A description of the problem.
**Proposed solution**
A clear description of what you want to happen.
**Alternatives considered**
Any alternative solutions or features you've considered.
**Additional context**
Any other context or screenshots.

38
CODE_OF_CONDUCT.md Normal file
View File

@ -0,0 +1,38 @@
# Contributor Covenant Code of Conduct
## Our Pledge
We are committed to making participation in this project a harassment-free
experience for everyone, regardless of age, body size, disability, ethnicity,
gender identity and expression, level of experience, education, socio-economic
status, nationality, personal appearance, race, religion, or sexual identity
and orientation.
## Our Standards
Positive behavior:
- Using welcoming and inclusive language
- Being respectful of differing viewpoints and experiences
- Gracefully accepting constructive criticism
- Focusing on what is best for the community
- Showing empathy towards other community members
Unacceptable behavior:
- Trolling, insulting/derogatory comments, and personal or political attacks
- Public or private harassment
- Publishing others' private information without explicit permission
- Other conduct which could reasonably be considered inappropriate
## Enforcement
Instances of abusive, harassing, or otherwise unacceptable behavior may be
reported to the repository maintainers at paul.dev.co@outlook.com.
All complaints will be reviewed and investigated and will result in a response
that is deemed necessary and appropriate to the circumstances.
## Attribution
This Code of Conduct is adapted from the [Contributor Covenant](https://www.contributor-covenant.org/),
version 2.1, available at
[https://www.contributor-covenant.org/version/2/1/code_of_conduct.html](https://www.contributor-covenant.org/version/2/1/code_of_conduct.html).

View File

@ -1,37 +1,56 @@
# imgui_xl
**Dear ImGui XL** — An enhanced community fork of [Dear ImGui](https://github.com/ocornut/imgui), focused on backend improvements, CI/CD fixes, and extended examples.
**Dear ImGui XL** — An enhanced community fork of [Dear ImGui](https://github.com/ocornut/imgui), focused on backend improvements, CI/CD fixes, sensors, and extended examples.
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
[![Upstream](https://img.shields.io/badge/upstream-ocornut%2Fimgui-blue)](https://github.com/ocornut/imgui)
[![Branch: master](https://img.shields.io/badge/branch-master-green)](https://github.com/Turtle-PB/imgui_xl/tree/master)
[![Live Demo](https://img.shields.io/badge/demo-GitHub%20Pages-green)](https://turtle-pb.github.io/imgui_xl/)
[![PRs](https://img.shields.io/badge/PRs-3%20open-orange)](https://github.com/ocornut/imgui/pulls?q=is%3Aopen+author%3ATurtle-PB)
> Dear ImGui is a bloat-free graphical user interface library for C++. It outputs optimized vertex buffers that you can render anytime in your 3D-pipeline-enabled application. It is fast, portable, renderer-agnostic, and self-contained (no external dependencies).
## Why This Fork?
## Live Demos
This fork (`imgui_xl`) serves as a staging ground for community contributions to Dear ImGui. It tracks upstream `master` and `docking` branches closely and adds:
| Demo | Description | Link |
|------|-------------|------|
| **Showcase** | Landing page with all demos + PR list | [turtle-pb.github.io/imgui_xl](https://turtle-pb.github.io/imgui_xl/) |
| **Echonation Visual** | 5-mode audio-reactive canvas demo | [echonation.html](https://turtle-pb.github.io/imgui_xl/echonation.html) |
| **Pixel OS Model** | Interactive Pixel 8 Pro phone simulator | [pixel_os_demo.html](https://turtle-pb.github.io/imgui_xl/pixel_os_demo.html) |
- **Backend fixes** — Vulkan use-after-free fix for multi-viewport dynamic rendering (#9390)
- **CI/CD improvements** — Android build fixed via pinned Gradle wrapper (#8878)
- **Enhanced metadata** — Topics, issues, and discussions enabled for community engagement
- **Contributing guide** — Clear path for new contributors
## Upstream Contributions
This fork tracks upstream and contributes back via PRs:
| PR | Issue | Description | Status |
|----|-------|-------------|--------|
| [#9467](https://github.com/ocornut/imgui/pull/9467) | [#8878](https://github.com/ocornut/imgui/issues/8878) | Android CI: Pin Gradle 9.4.1 via setup-gradle action (no binaries) | Open |
| [#9468](https://github.com/ocornut/imgui/pull/9468) | [#9390](https://github.com/ocornut/imgui/issues/9390) | Vulkan: Fixed use-after-free in multi-viewport dynamic rendering | Open |
| [#9469](https://github.com/ocornut/imgui/pull/9469) | [#3446](https://github.com/ocornut/imgui/issues/3446) | Android: Move JNI keyboard/clipboard into backend, add sensors + display | Open |
### Backend Improvements (PR #9469)
- **JNI keyboard/clipboard** — Moved ~120 lines of JNI boilerplate from the example into the backend. App code is now just `Init → Loop → Shutdown`.
- **8 sensor types** — Accelerometer, gyroscope, magnetometer, light, proximity, pressure, humidity, ambient temperature via NDK ASensor API (no JNI).
- **Display metrics** — DPI, density, xdpi/ydpi, refresh rate, orientation queried via JNI. Auto-scales ImGui style to actual device density.
- **Clipboard** — Full clipboard support via JNI to Android ClipboardManager.
- **Zero binaries** — No jar, no wrapper, no .gitignore changes.
### CI Fix (PR #9467)
- Uncommented and updated `setup-gradle@v6` action to pin Gradle 9.4.1 (required by AGP 9.2.0).
- Single 4-line change to `build.yml`, no binaries added.
### Vulkan Fix (PR #9468)
- Deep-copy `SurfaceFormat.format` into persistent buffer in `ImGui_ImplVulkan_CreateWindow()` to prevent use-after-free when viewport is destroyed.
- Follows the same deep-copy pattern already used in `CreateMainPipeline()`.
## Sync Status
This fork is kept in sync with [ocornut/imgui](https://github.com/ocornut/imgui):
| Branch | Tracks | Status |
|--------|--------|--------|
| `master` | `upstream/master` | ✅ Synced |
| `docking` | `upstream/docking` | ✅ Synced |
## Active Contribution Branches
| Branch | Issue | Description |
|--------|-------|-------------|
| `fix/vulkan-dynamic-rendering-use-after-free` | [#9390](https://github.com/ocornut/imgui/issues/9390) | Fix use-after-free in Vulkan multi-viewport dynamic rendering |
| `fix/android-ci-gradle-wrapper` | [#8878](https://github.com/ocornut/imgui/issues/8878) | Pin Gradle 9.4.1 via wrapper for AGP 9.2.0 compatibility |
| `master` | `upstream/master` | Synced |
| `docking` | `upstream/docking` | Synced |
## Quick Start
@ -57,25 +76,6 @@ make
See [CONTRIBUTING.md](CONTRIBUTING.md) for guidelines on submitting issues, PRs, and syncing with upstream.
## Web Demo: Pixel OS Model
This fork includes an interactive **Pixel OS Model Demo** — a working Pixel 8 Pro phone simulator that showcases Pixel OS capabilities in any browser:
- Lock screen, home screen, 7 functional apps (Phone, Messages, Camera, Settings, Clock, Photos, Browser)
- Quick Settings, Recents, Dark Mode, Theme switcher
- Full menu bar with keyboard shortcuts
- 100% self-contained HTML — no build step, no dependencies
**Run it:** Open [`examples/example_emscripten_pixel/pixel_os_demo.html`](examples/example_emscripten_pixel/pixel_os_demo.html) in any browser, or visit the [live demo on GitHub Pages](https://turtle-pb.github.io/imgui_xl/examples/example_emscripten_pixel/pixel_os_demo.html).
## Upstream Resources
- **Dear ImGui Homepage**: [github.com/ocornut/imgui](https://github.com/ocornut/imgui)
- **Documentation**: [docs/](docs/) directory
- **FAQ**: [docs/FAQ.md](docs/FAQ.md)
- **Wiki**: [github.com/ocornut/imgui/wiki](https://github.com/ocornut/imgui/wiki)
- **Issues**: [github.com/ocornut/imgui/issues](https://github.com/ocornut/imgui/issues)
## License
MIT License — see [LICENSE.txt](LICENSE.txt) for details.
@ -83,3 +83,5 @@ MIT License — see [LICENSE.txt](LICENSE.txt) for details.
## Credits
Dear ImGui is developed by [Omar Cornut](https://github.com/ocornut) and every direct or indirect [contributor](https://github.com/ocornut/imgui/graphs/contributors) to the GitHub repository.
Echonation visuals inspired by [@Echonation](https://youtube.com/@echonationmusic). Fork by [Paul Adcock](https://github.com/Turtle-PB) (Turtle-PB).