frontpage.
newsnewestaskshowjobs

Made with ♥ by @iamnishanth

Open Source @Github

fp.

Open in hackernews

CSS is DOOMed

https://nielsleenheer.com/articles/2026/css-is-doomed-rendering-doom-in-3d-with-css/
95•msephton•2h ago

Comments

Levitating•2h ago
Is CSS that awesome? It's still a language designed for styling webpages with 30 year of added features. I'd argue something purpose built would be a much better tool for the potential usecases people try to use CSS for now.

I guess I am asking, if modern CSS is so awesome, it's awesome compared to what exactly?

oopsiremembered•1h ago
I think the argument lies in its flexibility and versatility (regardless of it being the most efficient or effective tool for this one particular task).

Duct tape is awesome for the same reason -- even though there are several effective use cases for duct tape where a different tool would technically be "better" for the job.

Levitating•1h ago
But you don't choose CSS, it's the only tool in the toolbox. As long as you stick to the Web.
sbarre•1h ago
What kind of system would you propose (or do you envision) for applying visual styling to HTML markup in modern web pages today?

You can keep it high level but your comment makes me think you have something in mind, and I'm honestly curious.

Levitating•1h ago
I am not sure what a purpose-built tool would look like, but the CSS-like language you see in UI frameworks like GTK is tailored for styling actual UI's.

In CSS on the web, just centering a div has historically been a problem. We have flexbox now, but what if CSS was designed with our current needs from the get-go?

micromacrofoot•1h ago
compared to old css, it just keeps getting better
0x737368•1h ago
With how these things are going, soon hackers will be challenging themselves to run Crysis on calculators and microwaves
oopsiremembered•1h ago
I think we're going to get to the point where AI will try to run Doom on humans.
OrangePilled•1h ago
This page could use some "Practical CSS scroll snapping": https://css-tricks.com/practical-css-scroll-snapping/
division_by_0•1h ago
I was amazed when I first came across CSS scroll snapping. It's great for creating immersive experiences where one part of the page fills the entire screen while native browser scrolling still works.
OrangePilled•1h ago
When done right, I oddly find it immersive too. But know some people aren't fond of scrolling being tampered with.

The post here could really use it though. The main content is pushed to the bottom of the page!

sheept•1h ago
Creating 3D scenes with CSS has always been possible[0], but like this project, it's required JavaScript for interactivity.

But there's a lot more CSS features now. While in the past, Turing completeness in CSS required humans to click on checkboxes, now CSS can emulate an entire CPU without JavaScript or requiring user interaction.[1] So I wonder if DOOM could be purely CSS too, in real time.

[0]: https://keithclark.co.uk/labs/css-fps/ [1]: https://lyra.horse/x86css/

captn3m0•43m ago
The author links to th CSS x86 project:

> Yes, Lyra Rebane build a x86 CPU completely in CSS, but that technique is simply not fast enough for handing the game loop. So the result is something that uses a lot of JavaScript.

sgbeal•1h ago
It would be really interesting to see this without the texturing applied.
lysace•1h ago
The game logic runs in JavaScript

Also: a modern CPU is around 10000x faster than the 486 CPU Doom was designed for. Per core.

rkagerer•1h ago
But where can I try it out in my browser?

EDIT: https://cssdoom.wtf/

TeMPOraL•1h ago
Never tried Doom on a phone before, this one is surprisingly fluid and very playable.
nine_k•10m ago
Works smoothly in Firefox. But the default key mapping is busted: fire at Alt means that it opens and closes the menu in Firefox with each press. Also, Alt + left arrow ends the game and goes back in history.

Interestingly, it was more choppy in Chromium.

I could not find a key for moving sideways ("strafing").

All in all, quite mind-boggling.

notnmeyer•1h ago
at this point i’m more interested in what _can’t_ run doom.
josefrichter•1h ago
scared to go check my washing machine display
anthk•56m ago
I ran calypso.z3, tristam_island.z3 and a few more Zmachine text adventures under an interpreter created in PostScript.

Also if I want I can cross-compile a static build of Frotz for Linux/Misc and emulate it under a RISC interpreter for Linux syscalls written in... Perl, runable in every modern Perl port out there. Linux/RISC binary under Perl for NetBSD/Vax? Yes. Slow? Not much, it's a text game in the end.

But, as for the ZMachine, you can run text adventures in Android, Game Boy, Amiga, MSDOS, Windows, Palm PDA's... anything 8bit and up.

Also, damn Sokoban under Eforth written in Subleq, a VM which can just:

- set up a 2^16 RAM size

- single opcode: substract A from B, if less than 0, go to addr in C. - A < 0? Get ASCII input in B - B < 0? Put ASCII output in B - C < 0? End

This, just this, and people wrote Subleq simulators in C, AWK, Python, TCL, FPGA's and whatnot. And it will run Eforth, and that means... you can write a ZMachine interpreter on it and be really slow if emulated in a Pentium 4 (maybe 3/5 seconds per command with a ZMachine on top of Eforth for Muxleq instead of Subleq), but the game will be playable and a great exercise on Turing completeness.

If a Mandlebrot render under Muxleq+EForth (with no floats used, just integers) is as fast as a C64/Amiga with a native Forth. then having that tiny EForth+Muxleq is not that useless.

https://github.com/howerj/muxleq

josefrichter•1h ago
this is wild.
anthk•1h ago
https://freedom.github.io

Use Deutex, GNU make and Pillow for Python to compile.

Then wou will have up-to-date IWADS to be used aywhere. No need to put ID copyrights, just a mention to FreeDoom creators.

jsjsjxxnnd•1h ago
In recent years CSS has become closer to a full programming language through experimental features, for example in 2025 they added if statements and some math functions like modulo

https://www.simplethread.com/new-and-upcoming-css-features-i...

amelius•34m ago
The only thing missing is the ergonomics of a real programming language.
fnord77•45m ago
> CSS is awesome.

No

nathanmills•28m ago
>> CSS is awesome.

>No

Yes

MrDOS•32m ago
In 2006, Ars Technica published an April Fool's article[0] declaring that the perennially-forthcoming Duke Nukem Forever would finally see the light of day... as... a browser game! Ho ho, how droll.

Crazy to see how far we've come.

[0]: https://arstechnica.com/gaming/2006/04/forever/

socalgal2•21m ago
FYI: this is a cool hack and very impressive, but ... don't do this. That fact that it runs doesn't make it a good idea. Like running DOOM in Excel (https://github.com/Pranshul-Thakur/DOOM-in-excel) or making a DIV for every pixel and rendering by changing colors of divs https://news.ycombinator.com/item?id=46409359

Use 3D CSS to enhance a 2D page with some flair. But be aware, 3D CSS, it's trying to solve things that most realtime 3D rendering does not, like intersecting planes need to be subdivided in order to correctly handle transparency. This means 3D CSS has an O(N^2) or worse type of issue vs rendering yourself using WebGL or WebGPU where you'd avoid those issues. This demo probably does not intersect any planes but the browser itself has to check for those intersections anyway. TL;DR: If you're going to make a 3D web game use WebGL or WebGPU, not 3D CSS

Very cool demo though!

Founder of GitLab battles cancer by founding companies

https://sytse.com/cancer/
545•bob_theslob646•5h ago•133 comments

CSS is DOOMed

https://nielsleenheer.com/articles/2026/css-is-doomed-rendering-doom-in-3d-with-css/
97•msephton•2h ago•29 comments

Further human + AI + proof assistant work on Knuth's "Claude Cycles" problem

https://twitter.com/BoWang87/status/2037648937453232504
115•mean_mistreater•4h ago•77 comments

Linux is an interpreter

https://astrid.tech/2026/03/28/0/linux-is-an-interpreter/
144•frizlab•5h ago•24 comments

AI overly affirms users asking for personal advice

https://news.stanford.edu/stories/2026/03/ai-advice-sycophantic-models-research
476•oldfrenchfries•8h ago•370 comments

The first 40 months of the AI era

https://lzon.ca/posts/other/thoughts-ai-era/
75•jpmitchell•4h ago•15 comments

Ötzi the Iceman's DNA Reveals a Living Relative 5k Years Later

https://blog.familytreedna.com/otzi-the-iceman-dna/
15•ilamont•1h ago•3 comments

OpenCiv1 – open-source rewrite of Civ1

https://github.com/rajko-horvat/OpenCiv1
52•caminanteblanco•4h ago•6 comments

InpharmD (YC W21) Is Hiring – Senior Ruby on Rails Developer

https://inpharmd.com/jobs/senior-ruby-on-rails-engineer
1•tulasichintha•1h ago

I decompiled the White House's new app

https://thereallo.dev/blog/decompiling-the-white-house-app
314•amarcheschi•7h ago•114 comments

I Built an Open-World Engine for the N64 [video]

https://www.youtube.com/watch?v=lXxmIw9axWw
316•msephton•11h ago•50 comments

Meta Partners with Arm to Develop New Class of Data Center Silicon

https://about.fb.com/news/2026/03/meta-partners-with-arm-to-develop-new-class-of-data-center-sili...
13•eatonphil•4d ago•1 comments

Cocoa-Way – Native macOS Wayland compositor for running Linux apps seamlessly

https://github.com/J-x-Z/cocoa-way
286•OJFord•12h ago•91 comments

Undroidwish – a single-file, batteries-included Tcl/Tk binary for many platforms

https://androwish.org/home/wiki?name=undroidwish
52•smartmic•6h ago•3 comments

1929: Inside the Greatest Crash in Wall Street History

https://www.nybooks.com/articles/2026/03/26/tick-tick-boom-1929-andrew-ross-sorkin/
23•mitchbob•3d ago•24 comments

Detecting file changes on macOS with kqueue

https://www.vegardstikbakke.com/kqueue/
53•benhoyt•4d ago•7 comments

Spanish legislation as a Git repo

https://github.com/EnriqueLop/legalize-es
674•enriquelop•10h ago•207 comments

My heuristics are wrong. What now?

https://brooker.co.za/blog/2026/03/20/ic-leadership.html
6•herbertl•4d ago•0 comments

CERN uses ultra-compact AI models on FPGAs for real-time LHC data filtering

https://theopenreader.org/Journalism:CERN_Uses_Tiny_AI_Models_Burned_into_Silicon_for_Real-Time_L...
290•TORcicada•14h ago•128 comments

Private equity turned vulnerable elderly people into human ATMs

https://www.theguardian.com/society/2026/mar/28/the-great-care-home-cash-grab-how-private-equity-...
30•mordechai9000•1h ago•9 comments

Go hard on agents, not on your filesystem

https://jai.scs.stanford.edu/
570•mazieres•22h ago•304 comments

Circuit-level PDP-11/34 emulator

https://github.com/dbrll/ll-34
42•elvis70•6h ago•4 comments

rpg.actor Game Jam

https://rpg.actor/jam
55•Kye•6h ago•5 comments

C++26: A User-Friednly assert() macro

https://www.sandordargo.com/blog/2026/03/25/cpp26-user-friendly-assert
57•jandeboevrie•3d ago•42 comments

Improved Git Diffs with Delta, Fzf and a Little Shell Scripting

https://nickjanetakis.com/blog/awesome-git-diffs-with-delta-fzf-and-a-little-shell-scripting
106•nickjj•4d ago•34 comments

ICAO issued new power bank restriction on flight

https://www.icao.int/news/new-power-bank-restrictions-will-safeguard-international-aviation
49•phantomathkg•8h ago•67 comments

Hacking old hardware by renaming to .zip [video]

https://www.youtube.com/watch?v=P1kfuCkWo24
91•abadar•3d ago•70 comments

AMD's Ryzen 9 9950X3D2 Dual Edition crams 208MB of cache into a single chip

https://arstechnica.com/gadgets/2026/03/amds-ryzen-9-9950x3d2-dual-edition-crams-208mb-of-cache-i...
290•zdw•20h ago•161 comments

Google just gave Android power users a sideloading win

https://www.androidauthority.com/android-sideload-carry-over-3652845/
31•croemer•2h ago•27 comments

StationeryObject

https://stationeryobject.com/archive/
36•NaOH•3d ago•2 comments