frontpage.
newsnewestaskshowjobs

Made with ♥ by @iamnishanth

Open Source @Github

fp.

Open in hackernews

Show HN: AwsmRenderer, a browser-native WebGPU renderer in Rust

https://dakom.github.io/awsm-renderer/
3•dakom•5h ago

Comments

dakom•5h ago
This is the culmination of a long journey — it started in TypeScript, moved through WebGL1 with Rust bindings, then WebGL2, and now finally WebGPU. Woohoo :D

AwsmRenderer is a browser-native WebGPU renderer written in Rust, using web-sys directly (not wgpu). It’s intended to be high quality and ergonomic for typical gamedev use-cases, while keeping the API surface relatively small and explicit.

Fair warning: this is fresh off the push and only lightly tested so far. It requires a WebGPU-capable browser and is currently intended for desktop use.

Longer-term, the goal is to empower AAA-like gamedev in the browser with WASM. Internally, the API centers around keys that can be converted to/from u64, which should make it easier to move data across workers or future WASM component boundaries, and to integrate with physics engines or core game code.

Source: https://github.com/dakom/awsm-renderer

Curious to hear thoughts from folks with WebGPU, Rust, or browser graphics experience.

mendyberger•4h ago
Curious, why use web-sys directly instead of wgpu?
dakom•4h ago
Mostly because I want insight and control at a lower level, which breaks down into two different use-cases:

1. Debugging. The nature of bugs in this space is a lot more of "it doesn't look right on the screen" as opposed to "it breaks compilation", so I want to easily do things like peek into my buffers, use native js logging, etc. It's just a lot easier for me to reason about when I have more manual control.

2. Leaky abstractions. wgpu is a pretty low-level but it can't avoid the pain that comes with different backends, async where it should it shouldn't be, features that aren't available everywhere, etc.

That said, it would probably be pretty straightforward to convert the renderer into wgpu, most of the data structures and concepts should map cleanly

mendyberger•3h ago
Fair enough.

For me, having wgpu's rust native api feels so much nicer than having to deal with the unergenomic web_sys api. Tradeoffs.

dakom•3h ago
Yeah, I split the crates so `renderer-core` deals with the web-sys part, `renderer` is pretty much plain Rust (and wgsl with Askama templates)

I prefer this for 100% browser-only, but that's a niche. I do think wgpu makes more sense when you like the WebGPU headspace but want to target other backends (native, mobile, VR, etc.)

Show HN: WebTiles – create a tiny 250x250 website with neighbors around you

https://webtiles.kicya.net/
37•dimden•4d ago•2 comments

Show HN: Webctl – Browser automation for agents based on CLI instead of MCP

https://github.com/cosinusalpha/webctl
29•cosinusalpha•7h ago•5 comments

Show HN: Harmony – AI notetaker for Discord

https://harmonynotetaker.ai/
19•SeanDorje•1h ago•6 comments

Show HN: A fast CLI and MCP server for managing Lambda cloud GPU instances

https://github.com/Strand-AI/lambda-cli
12•odedfalik•2h ago•1 comments

Show HN: A 10KiB kernel for cloud apps

https://github.com/ReturnInfinity/BareMetal-Cloud
55•ianseyler•5h ago•8 comments

Show HN: HyTags – HTML as a Programming Language

https://hytags.org
51•lassejansen•1d ago•24 comments

Show HN: The Xoscript Programming Language

https://xoscript.com/history.xo
43•gabordemooij•5h ago•41 comments

Show HN: Digital Carrot – Block social media with programmable rules and goals

https://www.digitalcarrot.app/
16•newswangerd•6h ago•7 comments

Show HN: Tiny FOSS Compass and Navigation App (<2MB)

https://github.com/CompassMB/MBCompass
115•nativeforks•10h ago•36 comments

Show HN: Top Four – a directory of /top4 pages

https://topfour.net
2•peterspath•1h ago•1 comments

Show HN: Nori CLI, a better interface for Claude Code (no flicker)

https://github.com/tilework-tech/nori-cli
21•csressel•7h ago•4 comments

Show HN: Grsh – A high-performance shell for FreeBSD written in Rust

https://grimreaper.icu/
41•antomal•4h ago•21 comments

Show HN: 1D-Pong Game at 39C3

https://github.com/ogermer/1d-pong
65•oger•3d ago•13 comments

Show HN: Repomance: I made a Tinder like app that you can discover & star repos

https://apps.apple.com/us/app/repomance/id6756920720
3•masterpos•2h ago•3 comments

Show HN: The Tsonic Programming Language

https://tsonic.org
54•jeswin•1d ago•9 comments

Show HN: OSS AI agent that indexes and searches the Epstein files

https://epstein.trynia.ai/
198•jellyotsiro•19h ago•89 comments

Show HN: Skillshare – Sync skills across AI CLI tools

https://github.com/runkids/skillshare
8•runkids•6h ago•0 comments

Show HN: Nogic – VS Code extension that visualizes your codebase as a graph

https://marketplace.visualstudio.com/items?itemName=Nogic.nogic
126•davelradindra•1d ago•49 comments

Show HN: Sparrow-1 – Audio-native model for human-level turn-taking without ASR

https://www.tavus.io/post/sparrow-1-human-level-conversational-timing-in-real-time-voice
4•code_brian•3h ago•0 comments

Show HN: Cachekit – High performance caching policies library in Rust

https://github.com/OxidizeLabs/cachekit
44•failsafe•19h ago•7 comments

Show HN: An iOS budget app I've been maintaining since 2011

https://primoco.me/en/
154•Priotecs•1d ago•59 comments

Show HN: Lazypg – A simple terminal UI for PostgreSQL

https://github.com/rebelice/lazypg
2•bluehuman•4h ago•0 comments

Show HN: AwsmRenderer, a browser-native WebGPU renderer in Rust

https://dakom.github.io/awsm-renderer/
3•dakom•5h ago•5 comments

Show HN: Interactive Timeline of US Legislation (1975–Present)

https://www.chamberzero.com/
4•itta_e_ta•5h ago•4 comments

Show HN: Seapie – a Python debugger where breakpoints drop into a REPL

https://github.com/hirsimaki-markus/seapie
18•markushirsimaki•2d ago•9 comments

Show HN: AsciiSketch a free browser-based ASCII art and diagram editor

https://files.littlebird.com.au/ascii-sketch.html
44•schappim•23h ago•8 comments

Show HN: Space Pong

https://pong.priyavkaneria.com/
3•diginova•5h ago•0 comments

Show HN: SnackBase – Open-source, GxP-compliant back end for Python teams

https://snackbase.dev
66•lalitgehani•1d ago•13 comments

Show HN: How NBA teams perform vs. prediction market expectations

4•helloiamvu•5h ago•4 comments

Show HN: Cadence Spanish – AI audio lessons to learn Spanish

https://cadencespanish.com/
6•aliclark•6h ago•4 comments