Hi!
https://github.com/gogpu - The GoGPU ecosystem has reached a certain level 
of maturity; now we need people to debug the code, resolve bottlenecks, and 
report compilation and runtime errors. Everything is working at a basic 
level now, but there are still some issues regarding performance.
On Saturday, 31 January 2026 at 00:17:29 UTC+3 Michael Oguidan wrote:

> It's very cool, tkx for sharing
>
> On Friday, January 30, 2026 at 5:04:11 AM UTC [email protected] wrote:
>
>>
>>
>> https://dev.to/kolkov/gogpu-unified-2d3d-graphics-integration-in-pure-go-djf
>> On Thursday, 22 January 2026 at 23:21:41 UTC+3 David Nia wrote:
>>
>>> This code draws a triangle in a window using gogpu:
>>>
>>> app := gogpu.NewApp(gogpu.DefaultConfig().
>>> WithTitle("GoGPU - Triangle Example").
>>> WithSize(800, 600))
>>>
>>> app.OnDraw(func(dc *gogpu.Context) {
>>> dc.DrawTriangleColor(gmath.DarkGray)
>>> })
>>>
>>> app.Run()
>>>
>>>
>>> This code draws a circle using gg:
>>>
>>> ctx := gg.NewContext(500, 500)
>>> ctx.ClearWithColor(gg.White)
>>>
>>> ctx.SetRGB(1, 0, 0)
>>> ctx.DrawCircle(170, 170, 150)
>>> ctx.Fill()
>>>
>>> How do I combine these libraries to be able to draw a circle in a window 
>>> ?
>>> I do not see where the libraries communicate with each other.
>>>
>>> Thanks
>>>
>>>
>>> On Thursday, December 18, 2025 at 3:34:33 PM UTC-8 [email protected] 
>>> wrote:
>>>
>>>> Hi gophers!
>>>>
>>>> I'd like to introduce GoGPU — an ecosystem of Pure Go libraries for GPU 
>>>> programming. No CGO, no Rust, no C++ — just Go.
>>>>
>>>> The project started from a Reddit discussion about GUI/graphics support 
>>>> in Go:
>>>>
>>>> https://www.reddit.com/r/golang/comments/1pdw9i7/go_deserves_more_support_in_gui_development/
>>>>
>>>> And from the realization that fogleman/gg (the beloved 2D graphics 
>>>> library) has been unmaintained for years:
>>>> https://github.com/fogleman/gg/issues/208
>>>>
>>>>
>>>> WHAT WE'VE BUILT
>>>> ----------------
>>>>
>>>> gogpu/wgpu — Pure Go WebGPU implementation
>>>> Complete WebGPU types, validation layer, and hardware abstraction. 
>>>> Three backends: Vulkan (cross-platform), OpenGL ES (Windows/Linux), and 
>>>> Software (full CPU rasterizer for headless/CI). ~55K lines of pure Go.
>>>> https://github.com/gogpu/wgpu
>>>>
>>>> gogpu/naga — Pure Go shader compiler
>>>> WGSL to SPIR-V compiler. Supports vertex, fragment, and compute shaders 
>>>> with atomics and barriers. ~17K lines.
>>>> https://github.com/gogpu/naga
>>>>
>>>> gogpu/gg — Enterprise-grade 2D graphics
>>>> Spiritual successor to fogleman/gg with GPU acceleration. Canvas API, 
>>>> text rendering, images, clipping, 29 blend modes, scene graph, parallel 
>>>> rendering. ~25K lines.
>>>> https://github.com/gogpu/gg
>>>>
>>>> gogpu/gogpu — High-level graphics framework
>>>> Simple API for GPU applications. Dual backend: use wgpu-native FFI for 
>>>> production or Pure Go for zero-dependency builds.
>>>> https://github.com/gogpu/gogpu
>>>>
>>>> gogpu/ui — GUI widget toolkit (planned)
>>>> The end goal — a complete widget toolkit for desktop applications. 
>>>> Currently in early planning stage.
>>>> https://github.com/gogpu/ui
>>>>
>>>>
>>>> THE VISION
>>>> ----------
>>>>
>>>> We want Go to have first-class graphics support — from low-level GPU 
>>>> access to high-level GUI widgets. The stack:
>>>>
>>>> Your App / GUI
>>>> ↓
>>>> gogpu/ui (widget toolkit, planned)
>>>> ↓
>>>> gogpu/gg (2D graphics)
>>>> ↓
>>>> gogpu/gogpu (GPU framework)
>>>> ↓
>>>> gogpu/wgpu (WebGPU) + gogpu/naga (shaders)
>>>> ↓
>>>> Vulkan / Metal / DX12 / OpenGL
>>>>
>>>>
>>>> USE CASES
>>>> ---------
>>>>
>>>> - Game development (2D games, game engines)
>>>> - Data visualization dashboards
>>>> - CAD/vector graphics applications
>>>> - Server-side image generation (PDF, charts, thumbnails)
>>>> - CI/CD testing without GPU hardware
>>>> - Desktop applications with custom UI
>>>> - Embedded systems with minimal dependencies
>>>>
>>>>
>>>> CURRENT STATUS
>>>> --------------
>>>>
>>>> Total: ~154K lines of pure Go code across the ecosystem.
>>>>
>>>> All libraries are functional and tested. The software rasterizer just 
>>>> got a major update with full triangle rendering, depth/stencil buffers, 
>>>> and 
>>>> parallel processing.
>>>>
>>>> We're now working toward a GUI widget toolkit (gogpu/ui).
>>>>
>>>>
>>>> PUBLICATIONS
>>>> ------------
>>>>
>>>> Dev.to articles about the journey:
>>>> - GoGPU Announcement: 
>>>> https://dev.to/kolkov/gogpu-a-pure-go-graphics-library-for-gpu-programming-2j5d
>>>> - 100K Lines in Two Weeks: 
>>>> https://dev.to/kolkov/gogpu-from-idea-to-100k-lines-in-two-weeks-building-gos-gpu-ecosystem-3b2
>>>> - Naga Shader Compiler: 
>>>> https://dev.to/kolkov/building-a-shader-compiler-in-pure-go-naga-reaches-v040-39ol
>>>> - gg 2D Graphics: 
>>>> https://dev.to/kolkov/pure-go-2d-graphics-library-with-gpu-acceleration-introducing-gogpugg-538h
>>>>
>>>>
>>>> INTERESTED?
>>>> -----------
>>>>
>>>> We'd love to hear your thoughts:
>>>> - Is this something you'd use?
>>>> - What features would be most valuable for your projects?
>>>> - Want to contribute?
>>>>
>>>> GitHub: https://github.com/gogpu
>>>>
>>>> Thanks for reading!
>>>>
>>>> --
>>>> Andrey Kolkov
>>>
>>>

-- 
You received this message because you are subscribed to the Google Groups 
"golang-nuts" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion visit 
https://groups.google.com/d/msgid/golang-nuts/dce6b0d0-0025-420f-b4d2-290b953a0fd7n%40googlegroups.com.

Reply via email to