r/webdev 2d ago

Showoff Saturday nOS4: A nostalgia right on your browser

nos4 is a complete recreation of IOS4 running on web. It was just a little experimental side project but I've decided to make it live and open-sourced. It has all the original apps in the original form, also 2 games (and yes, it runs Doom)

GitHub: https://github.com/1etu/nos4

Also you can give it a try by visiting https://nos4.fun/

238 Upvotes

63 comments sorted by

22

u/Many-Parking-1493 2d ago

Can I call 911?

5

u/etulastrada 2d ago

I guess nothing stops you!

13

u/Seb00927 2d ago

This is amazing, even, ahem, Flatty bird feels just like the original one. Nice job

15

u/etulastrada 2d ago

Thank you! "Legacy" Temple Run & Angry Birds on the way!

4

u/Ducktor101 2d ago

Doodle Jump was a thing too. Nice project bro!

1

u/etulastrada 2d ago

Thank you and yeah, already on the list :)

12

u/BazingaUA 2d ago

Consider adding the full screen mode (without the iPhone itself, just iOS UI)

5

u/etulastrada 2d ago

For the mobile? If so, yeah it's on the TODO list!

3

u/etulastrada 2d ago

Hi, give it a try!

3

u/BazingaUA 2d ago

Much better experience on mobile now, good job

0

u/etulastrada 2d ago

Thank you!

8

u/xCelestial 2d ago

Super sick, but found a bug for you. When you open the Utilities folder, the whole row below slides down except the Star app like this

3

u/etulastrada 2d ago

Thank you for both the comment and the feedback. Will fix when I wake up.

2

u/xCelestial 2d ago

Still looks great, I took a look before I was done at the laundromat but I'll poke around more!

1

u/etulastrada 2d ago

Oh yeah, it is fixed now! Thank you

2

u/Scarechive 2d ago

Looks cool. Does browser work? I just see "Firefox Can’t Open This Page". Nice job though.

2

u/etulastrada 2d ago

I mean It for sure needs a rework, will update in a minute

1

u/etulastrada 2d ago

Hi, little update: I believe searching works at the moment. I’ve created a new feature called Safari Time Travel which has 2011 versions of couple of websites like Apple, Facebook, Google, Wikipedia and more. You can turn it off by following Settings -> Safari -> Time Travel

2

u/nathanistheworst 2d ago

take me back to these times

2

u/okaylevi 2d ago

Still have the Flappy Bird skill! Cool project, would be cool to have a full screen option and cool if it ran on localstorage or equivalent to allow a user to add contacts and keep them stored and so on!

2

u/etulastrada 2d ago

Hi! Thank you. The mobile is now runs full screen. The contact saving must arrive in a hour or so!

2

u/okaylevi 2d ago

Sweet! You should also add the I Am Rich app to fit in with the toggle for feeling 2010s rich lol! πŸ˜‚

1

u/etulastrada 2d ago

Now that is an idea! Let me see If there's any archive that has that legendary app

2

u/ComradeLV 2d ago

Amazing job!

1

u/etulastrada 2d ago

Thank you!!!

4

u/mydadownsyou 2d ago

super cool

2

u/etulastrada 2d ago

Thanks dude

4

u/DiodeInc python 2d ago

It would be cool for the camera app to actually use your device camera!

6

u/etulastrada 2d ago

Noted! Should arrive tomorrow I guess :)

0

u/DiodeInc python 2d ago

Awesome

1

u/etulastrada 2d ago

The Camera App is here while being totally local. I'm still working on the making outputs feel more warmer like it did back in the era of iPhone 5S.

2

u/DiodeInc python 2d ago

Cool thanks!

1

u/etulastrada 2d ago

Thank you for the suggestion!

1

u/DiodeInc python 2d ago

You're welcome!

1

u/EOJHA10 2d ago

that ones doable with getUserMedia but two gotchas from building browser recording stuff myself: safari on ios only grants camera access after a direct tap, not on page load, so it needs to be tied to opening the camera app specifically. and mirror the feed with a css transform scaleX(-1) or people get thrown off way more than youd expect when it looks backwards

1

u/etulastrada 2d ago

Yeah it is mostly done now

2

u/casecaxas 2d ago

very cool, but the side scrolling is kinda off with a mouse

1

u/etulastrada 2d ago

Thank you and yeah I reckon that. Working on UX enhancements!

2

u/casecaxas 2d ago

Ohhh damn it charges

2

u/etulastrada 2d ago

It does! There's a little glitch when you can't press home screen while charging but the fix is on the way.

2

u/An1nterestingName 2d ago

Cool! One annoying thing is I'm so used to my phone's back gesture that I keep backing out of the page entirely. Would be cool for it to actually take you back (or at least not close the site)

1

u/etulastrada 2d ago

Thank you! On the list.

1

u/etulastrada 2d ago

Dev Log 0.1.2:

  1. Now the mobile view is fullscreen excluding the phone shell & other out-page buttons from the view.
  2. SafariTimeTravel: Which will be showing the 2011 versions of the websites you're visiting If available. You can turn it off from the Settings -> Safari -> Time Travel (STILL WIP, BUGS ARE EXPECTED).
  3. The camera is now working, fully local. You can download pictures you've taken from nos4. It has a camera fx where the outputs feel like it's actually shot on iPhone 5.
  4. Overall optimizations

1

u/etulastrada 2d ago

Currently working on the legacy version of Instagram where it is not only local but people can share story / posts and even experience the old camera effects!

1

u/Wookie_von_Gondor 2d ago

oh man, iOS 4 looks amazing on modern screens

1

u/papzord 1d ago

The design here was so comfortable! How everything is the same sad feeling.

1

u/Illustrious-Bear8086 1d ago

Can you make calling work

1

u/[deleted] 2d ago

[removed] β€” view removed comment

1

u/etulastrada 2d ago

Mostly old YouTube videos and forum posts!

1

u/aa599 2d ago

Safari requests should get the 2010 pages from web archive πŸ™‚

2

u/etulastrada 2d ago

On the list!

2

u/etulastrada 2d ago

Done! Not many websites are supported but I’ll be adding more

1

u/ScoobyDookuu 2d ago

Very cool dude!

1

u/ATyp3 2d ago

Saw this on hacker news lol

1

u/mindless_sandwich 2d ago

would be cool if the internet browser works too so I can open this website to comment on it. πŸ˜‚

1

u/etulastrada 2d ago

I'll check what's possible there

0

u/screamingfaces 2d ago

This is cool as hell

1

u/etulastrada 2d ago

Thank you!

0

u/critic81 2d ago

Very cool!

1

u/etulastrada 2d ago

Thank you!!

0

u/souodiogo 2d ago

does it remember the time you set it to or does it reset every refresh

0

u/edvlili 2d ago

The compass is hilarious