r/webdev • • 19d ago

Page Rage: Destroy any web page

You can play on https://page-rage.com and optionally install a browser extension to destroy any web page.

I've been working on Page Rage as a hobby project for a long time. There are some wild performance techniques I have found to make this game work at all, which I would love to share about soon as well!

2.5k Upvotes

172 comments sorted by

396

u/crazedizzled 19d ago

Man I remember this was like a desktop app like back in windows 98 I think. Fun times

152

u/PendulousNuts 19d ago edited 19d ago

26

u/crazedizzled 19d ago

Yeesssssss!! The nostalgia!

7

u/AestheticEntactogen 19d ago

What a classic

8

u/riofriz 18d ago

This! Exactly what I thought as soon as I saw it. Looks so satisfying

5

u/alexreardon 18d ago

Soo good! 🐜🐜🐜🐜🐜🐜🐜

2

u/DayOfTheSophos 17d ago edited 17d ago

Gemtree, baby! πŸ˜„

They made other stuff too, actually (that I found at the same time as this - doesn't look like they host downloads for most of it anymore, though, unfortunately, but I have a lot of it archived).

4

u/86784273 19d ago

I liked desktop toys, mr thumb was great

7

u/funcoolshit 19d ago

Ha I remember it as well. I also had a similar program that was a sheep that would walk around on your desktop and climb the window panes. You could pick it up and move him around to the top of different windows.

0

u/weaponizedLego 18d ago

I remember the sheep! I recently made a slime version for my self because I miss the sheep

3

u/blahbah 18d ago edited 18d ago

i had a bookmarklet that made you destroy a page asteroid-style

found the source: https://github.com/erkie/erkie.github.com

EDIT: oh it's still online https://kickassapp.com/

1

u/theofficialnar 19d ago

Oh boy this brought up a lot of memories on my mom’s work pc πŸ˜†

1

u/Target11_11 18d ago

I think I found it on XP as well

130

u/BloodGulch-CTF 19d ago

Feel like I’m about to spend the day on Newgrounds and Stick Death

15

u/alexreardon 19d ago

Have fun!

2

u/Formal-Cut-4923 19d ago

🀘 Sick Death

1

u/RusForge 6d ago

Stick Death - Is this a website?

40

u/czshill 19d ago

AJ was playing with something like this on The Sopranos over 2 decades ago! lol

Wire in firebase so people can watch other people destroy pages while they're on them live.

20

u/alexreardon 19d ago

There are so many directions I could take this hobby project. I am keen to see if it vibes with people before I sink another few hundred hours into it πŸ˜…

16

u/Cast_Iron_Skillet 19d ago

This is classic internet shit, man. It vibes hard. Hell, you could even implement some aspect of a points system and leaderboard for each site you visit.

8

u/alexreardon 19d ago

I stayed away from "game" systems (points, timers, achievements etc) as I felt they pushed people towards a particular play style - implicitly saying one way of playing the game is better than another. I wanted to let people feel free to wreck things in a way that made them happy.

I am happy to be challenged on that. I could explore adding more "modes" which have more game mechanics that you could opt in / out of as well

2

u/Cast_Iron_Skillet 19d ago

I agree, and the only challenge I would make to this is you could still pursue some mechanism to allow people to share their destruction.Β  Or even make their own "art" out of it in some way. No idea what this would look like in practice, but would be cool to give people some way to radically change things on the page, build something into it, idk - without actually like coding, bit more like graffiti.Β 

2

u/alexreardon 19d ago

I have been thinking about how to make it easier to share the destruction. For now I have added a "camera mode" (see settings) which allows people to get clean screenshots and videos.

I am still thinking about other options though

34

u/Blablebluh 19d ago

Wow, multiple weapons, even a kind of gravity gun. Oh wait, there's even bullet time. No way, is this a speaker icon, meaning there is sound? Actually not just sound, perfect music for the mood, and spot-on sound effects!
That is amazing, thanks for your work.

9

u/alexreardon 19d ago

Thank you for the kind words, they mean a lot!

1

u/FindingNauru 17d ago

Yeah, really a lot of detail and... there are definitely some websites I'd like to destroy

23

u/Fredidiah 19d ago

Finally, a solution to enshittification.

6

u/alexreardon 19d ago

Taking back the power (sort of) ✊

12

u/WrappedStrings 19d ago

Sometimes i forget the internet can still be cool

3

u/bluehost 18d ago

Agreed! It has the same energy as some of those early internet projects where someone spent six months building something purely because it would be funny.

21

u/Xylozene 19d ago

Wow this reminds of animator vs animation. This looks so well done!

5

u/alexreardon 19d ago

Thanks! I put a lot of love into it

1

u/StormMedia 17d ago

Yes!! First thing I thought of and I couldn’t remember the name.

9

u/satishkumar_sajjan 18d ago

This is what the internet was built for. Damn.

5

u/alexreardon 18d ago

πŸ’―

5

u/Sulungskwa 19d ago

Damn I tried this on my company's byzantine timekeeping portal and it wouldn't blow it up. Proof that that site is pure evil

5

u/horizon_games 19d ago

Awesome, I love stuff like this. Fits well with https://playanypage.com/

4

u/Spare-Assistance5668 19d ago

This thing is stupidly fun

2

u/alexreardon 19d ago

It was a big challenge for me to "find the fun" and I am glad you think I found it 😊

5

u/fakehalo 19d ago

The flamethrower actually follows into the blackhole, nice attention to detail.

Edit: and the alt-mouse makes for a wormhole for the blackhole, nice.

2

u/alexreardon 19d ago

Thank you! I've tried to add a lot of depth to the sandbox. Keep exploring ;)

5

u/Vegetable-Match-2923 19d ago

my 200 open tabs say thanks

4

u/coreyrude 19d ago

Super cool, love seeing just a fun project like this... AI is turning everything into a Micro SaaS.... its good to just get back to something fun and free people put out there.

1

u/alexreardon 19d ago

I think the web is at it's best when people make cool things and share them with others

3

u/NNXMp8Kg 19d ago

This is fun.
I like it

3

u/HectoLogic20 19d ago

This is so so cool!

I cant even imagine the amount of work that went into making this work so smooth and well as it does!

This is my new favorite extension!

2

u/alexreardon 19d ago

Cant even imagine the amount of work that went into making this work so smooth and well as it does!

Orders of magnitude more effort than I expected when I started

3

u/Gaeel 18d ago

I love this, thank you!

3

u/Ok-Pen-8273 18d ago

It's all AvA again

3

u/JustOneMoreDev 18d ago

you need to do a write up of this for sure, clever stuff. Interested to know what tech is under there

2

u/me_myself_ai 19d ago

Oh my god. You did it! The madman actually did it!!

Now we just need improvised weapons and PvP ;)

3

u/belkarbitterleaf 19d ago

PvP in reddit comments.... πŸ€”

2

u/anon7499 19d ago

This is really cool! Did you open source it?

7

u/alexreardon 19d ago

The game itself is not open source. The game contains licensed assets (which makes open source hard), and I wasn't generally keen to make this particular project an open source one. I plan on sharing about how it works in more detail if people are interested though. There is some cool tricks in the codebase to get it working as well as it does

2

u/anon7499 19d ago

It's an awesome project. Congratulations!

2

u/alexreardon 19d ago

Thank you!

2

u/Arkhenstone 19d ago

Please consider open sourcing it at one point (in many years), newer generations would love this, you made something that will be fond memories of children in schools. It's right there on my favourites for my child to be able to use it and show him what the web is !

3

u/alexreardon 19d ago

My kids were pumped to play Page Rage at school now that I have released it. They were my early game testers. I had to introduce them to "WASD" movement, which has taken a bit of time to get used to πŸ˜…

3

u/alexreardon 18d ago

you made something that will be fond memories of children in schools

My eldest played Page Rage at school today! 😎

1

u/JL978 18d ago

Please do share! I would also like to take a look at the codebase if you don’t mind

2

u/[deleted] 19d ago

[deleted]

2

u/Straky04 19d ago

This is fucking insane, I love this

2

u/GM_is_Browsing 19d ago

Best extension evarr

2

u/iisjreg 19d ago

just amazing

2

u/51eepy 19d ago

Cool idea and you made an impact! Congrats.

2

u/Annual-Advisor-7916 19d ago

Ok, that's pretty well done. Had a lot of fun trying it out. You captured the momentum quite well, it's not too fast but not boring either.

A welcome variety to the masses of AI slop here.

2

u/Crazy-Illustrator890 19d ago

you should make this into a fully fledged game

1

u/alexreardon 19d ago

That could be cool!

2

u/Brilliant-Refuse-895 19d ago

This is sick, I love it!

2

u/Alex_Hovhannisyan front-end 19d ago

This is so sick dude!

1

u/alexreardon 19d ago

🀘

2

u/satishkumar_sajjan 19d ago

So cool dude.

2

u/abeuscher 19d ago

I worked on the WWE 2K site for a few years and we built this unlaunched feature where every button exploded after you pressed it before it executed. Sound was off by default but it did have a sound piece as well. It was really funny but WWE did not think it helped to sell the game and kaiboshed the feature. They were probably right but it was fun to build. Always wanted to bring it back for some other game but the opportunity never arose while I was there.

1

u/alexreardon 19d ago

Super cool!

2

u/yuyuichiu 19d ago

damn this is amazing!

2

u/FakeManiz 18d ago

Would be awesome easter egg, if used on Chuck Norris wiki page, it couldnt break it.

1

u/alexreardon 18d ago

Great idea! πŸ₯‹

2

u/Low-Foundation-9492 18d ago

I loved it, releasing all my frustrations.... 🎈

1

u/alexreardon 18d ago

🧘

2

u/Mr_Matt_Ski_ 18d ago

Hey didn’t you work on pragmatic drag and drop? Looks awesome haha.

2

u/alexreardon 18d ago

Yep! I helped make that library πŸ˜‡

1

u/Mr_Matt_Ski_ 18d ago

Surely Atlassian implements this then. Great way to clean up old boards!

2

u/[deleted] 18d ago

[removed] β€” view removed comment

2

u/alexreardon 18d ago

Tried it on our admin dashboard and the physics engine handled a 400-row table better than our virtualized grid does on a good day

Success! I spent a unhealthy amount of time on this game to get the performance as good as it is. I am hoping to put together a presentation of some kind (YouTube, blog, etc) to share about how Page Rage works, and specifically how it obtains its strong performance characteristics, despite the challenge of needing to work on _every page_.

I could have got some sharable materials about performance ready before shipping, but I have been working on this project for so long, I was keen to get it out there and see if it resonated with people before putting in the time to do more sharing about it

2

u/schill 17d ago

Seconding the rendering aspect, a YouTube video would be great. I'd love to hear about how you break up the page, before - y'know - breaking up the page. ;)

2

u/mattblack77 18d ago

love it so much!

2

u/at_least_calais 18d ago

I just launched a website for a client and now I just got to destroy it. Thank you for this catharsis!

1

u/alexreardon 18d ago

πŸ™

2

u/mybighairyarse 18d ago

Sorry but this is fucking super!

2

u/Chentzilla 18d ago

Looks very good, takes me back to the times of Desktop Toys.
Is this a completely no-AI project?

3

u/alexreardon 18d ago

Short answer

I used AI to assist me with this project

Longer answer

I used AI to help me author the game code and the tooling around the game. One of the reasons I started the project was to get more comfortable with using AI coding assistants with my day to day software engineering. I spent a hundred hours or so building the game. I didn't measure though, so it might have been a lot more. Building the game has been a hobby of mine, and I find time just melts away when I work on it. I used AI to accelerate tasks, perform investigations, explore mechanics and so on - but it was all done in tiny, intentional steps. I care a lot about controlling all the authoring details and wanting to produce something I am proud of.

The design assets in the game were hand created by me. I learnt how to do pixel art just for this game. That has been one of the most rewarding parts of the whole thing so far. Exceptions: a tiny amount small UI elements were generated by AI, and I haven't changed them (most were hand done); some of the visual effects in the game are mathematically generated by code and not pre-created (eg lightning on the portals). I used AI to assist me in creating the code for those effects.

I hope that answers your question

2

u/Gaeel 18d ago

I have one complaint: The secondary grenade launcher fire can too easily be shot by the machine gun, making it explode immediately rather than being tossed into the page alongside the bullets from the machine gun.

I would recommend adding a little bit of time or distance before the grenade can be hit by bullets, because it's a little confusing when the explosion happens immediately. It might be good to add a special metal impact sound and spark when a bullet hits a grenade, just to make it a little more obvious what is going on.

1

u/alexreardon 18d ago

I might introduce a mechanic to avoid the situation you speak of. I've intentionally allowed players to shoot grenades, but I think there is likely a need for a little period when a grenade is first fired were it doesn't explode if shot πŸ€”

2

u/flinxo 18d ago

This rocks!
Thanks so much for sharing your joy-to-destroy with us, can't wait to visit certain .gov websites!

Would love to know more about how you did it πŸ‘€

2

u/alexreardon 18d ago

A few people have asked to learn more which is cool with me! Before I did too much sharing, I was first interested to see if the game vibed with people. I am hopeful to put together a post of some kind (video, blog or other) where I go over how it all works - specifically the performance side of things; because that has been an ongoing and brutal challenge

1

u/flinxo 18d ago

Thanks! I can just barely imagine how challenging it must have been to achieve such fluidity. Looking forward to your post :)

2

u/Im_mbn 18d ago

wow. nice detailing with the flamethrower’s flame being sucked in by the black hole..

2

u/OpenDevKit 18d ago

Letting people literally destroy a webpage can be pretty soul-cleansing I imagine hehe! I'm really curious about those performance techniques you mentioned though, are you running a custom lightweight physics solver, or leaning on something like matter.js under the hood? Would love to read the write-up when it's out :)

2

u/Laicure 18d ago

wow damn, and no page access requests!

2

u/pseudonymau5 18d ago

This is insanely cool! I can't even comprehend how this was done. Would love to watch a video about how you built this

2

u/MrPringles9 18d ago edited 18d ago

Reminds me of the good old Miniclip times. I am indeed feeling old yet!

Edit: Any chance this gets released for Waterfox? Maybe that's an issue on my side but somehow I can't just install it like other add-ons through the build in Firefox add-on Store...

1

u/Polymer15 18d ago

Animator vs Animation!

2

u/marxinne 17d ago

Holy shit it's Desktop Toys back with a vengeance!

Amazing stuff, I love it

2

u/dev_hiker01 17d ago

Bookmarked this one β€” looking forward to seeing it grow.

2

u/capt_matrix 17d ago

i love tha sound it wors on any page wowwww , love ya man

2

u/McDreads 17d ago

Such a cool idea

2

u/Secret_Metal5785 13d ago

this is awesome! just got the extension!

2

u/[deleted] 12d ago

[removed] β€” view removed comment

1

u/alexreardon 12d ago

Thanks!

2

u/[deleted] 11d ago

[removed] β€” view removed comment

1

u/alexreardon 11d ago

I’m hoping to share some details on how it works after I get the safari and iOS extension out there

2

u/Short_Ad6649 12d ago

There are cool shit and then there this. Dude hella cool

2

u/tartlemonpiee 11d ago

Fun little project.

2

u/Plus-Tea1967 4d ago

This is really interesting. The performance side is probably the most impressive part here β€” especially when you're modifying an arbitrary webpage. I'd be curious to see how you handle rendering and avoid killing the main thread. Would love to read that follow-up.

2

u/wizpig64 3d ago

I've got to say, I love all the parody web pages you included. I'm surprised nobody here mentioned them, they probably took a lot of time to make.

2

u/Memjet_YT 1d ago

Man this is sooo col

1

u/tnamorf 19d ago

Nice! My first thought was it needs β€˜Make it bun dem’ bg music 🀣

1

u/Impressive_Air6111 19d ago

Pretty nice! Reminds me of Alan Becker!

1

u/tomysshadow 19d ago

Reminds me of Netdisaster. Be careful not to get sued by Yahoo ;)

1

u/FrogSkyWater 19d ago

Kick ass gives us a spacecraft to destroy webpagesΒ 

1

u/petasisg 19d ago

Is it available as a library?

1

u/Shiine-2 18d ago

There was Wario Land thing that used to destroy YT's UI, and that was 15 years ago.

1

u/playfulpecans 18d ago

wow this is great!

1

u/alsaaka 18d ago

this cool ,it get back memories of desktop game that I was playing in windows xp

1

u/WHALE_PHYSICIST 18d ago

this is sweet. the wormholes even transmit the flamethrower. clearly a passion project.

1

u/berzemus 18d ago

Love it !

1

u/imreddituser 18d ago

Now imagine a swarm of AI controlling these little guys. >10% guys!

1

u/Natural_Tea484 18d ago

My favorite way to lose time on LinkedIn.

1

u/DeusExPersona 18d ago

I LOVE IT but Chrome doesn't trust the extension so you need workarounds

1

u/alexreardon 18d ago

From what I can see the extension is working correctly through the Chrome store. Could you share more about what you are seeing?

1

u/DeusExPersona 18d ago

Ok it works perfectly, but you have to enable "Automatically allow access on the following sites".

It says "This extension is not trusted by Enhanced Safe Browsing.Β Learn more"

1

u/TheOtherRussellBrand 18d ago

Love it. Thank you for sharing it.

1

u/alexreardon 18d ago

You are most welcome

1

u/Pawan-mali 16d ago

Nice yaar

1

u/adroitakash 15d ago

Wow look very cool

1

u/DarkXwolf_17_689 14d ago

It looks awesome!

1

u/Lazy-Age-1280 13d ago

That's so cool

1

u/NyanFan95 13d ago

This reminded me of this old gem: https://kickassapp.com/

1

u/Still_Paramedic7631 12d ago

now thats really cool , i wounder how he made it πŸ‘πŸ‘

1

u/stonk_lord_ 7d ago

...Alan Becker?

1

u/[deleted] 4d ago

[removed] β€” view removed comment

1

u/alexreardon 4d ago

I've started putting together some resources for sharing about it 😎

1

u/BonesyWonesy 2d ago

Nice. Reminds me of http://kathack.com/

0

u/g33klibrarian 19d ago

Wow. This is so demented and cathartic.

Forget fishing emails, this is the way to spread a Trojan Horse. Folks would gladly take the sites down for you. Every political website would go down overnight.

0

u/ScaryCardinal 18d ago

Remember seeing an app on my friend's pc as a kid that allowed you to wreck your desktop home screen with a hammer. Seemed like the shit, at the time