You are browsing as a guest. Sign up (or log in) to start making projects!

Matesz

@Matesz

Joined June 27th, 2026

  • 3Devlogs
  • 1Projects
  • 0Ships
  • 0Votes
Open comments for this post

10h 26m 16s logged

                           RetroWebOS
Just pushed a major retro-theming update that dials the nostalgia to 11. This isn't just a skin
change—it's a full immersion retrofit.

What's new in the Retro Edition:
• Authentic CRT curvature simulation (using CSS transforms + filters, not canvas)
• Scanline intensity now dynamically responds to brightness (like real phosphor decay)
• Added 4 vintage wallpapers: IBM green terminal, Apple II monitor, VT100 amber, and RGB composite
artifact
• Terminal now supports true CGA/EGA/VGA color palettes with customizable intensity
• Boot sequence rewritten to mimic POST beeps + memory count + BIOS splash
• Shutdown animation includes realistic power-down surge and fading glow
• System sounds regenerated using Web Audio API to emulate SN76489 and AY-3-8910 chips
• Added "degauss" command to Terminal that temporarily warps the display (with recovery animation)

Favorite feature: The new "Retro Inspector" DevTool
It lets you toggle individual CRT effects (scanlines, curvature, bloom, phosphor bloom, chromatic
shift) in real-time while seeing the performance impact overlay. Pure CSS solutions mean these
effects stay under 2ms frame cost even on integrated graphics.

The architecture tweaks:
• ThemeEngine now accepts spectral power distributions for accurate phosphor emulation
• Audio.js added noise generators for tape hiss and RF interference
• WindowManager gained "persistence" option that leaves ghost images when dragging (like
long-persistence phosphor)
• FS.js now stores theme preferences per-user in IndexedDB with encrypted backup

What I fixed:
• Purple theme had incorrect green channel bleed (was mixing blue+red instead of proper magenta)
• Wallpaper slideshow paused when opening settings menu (z-index conflict)
• Terminal bell sound was too sharp—now filtered through CRT speaker simulation
• Cursor blink rate wasn't respecting system accessibility settings
• Fixed a race condition where desktop icons would momentarily snap to grid on theme change

v0.9 roadmap (Retro polish):
• Add "TV mode" with overscan, color bleed, and RF noise
0
0
2
Open comments for this post

1h 26m logged

                         My very own WebOS

A week ago I released v2.0. Now here’s v3.0 “Synthwave Edition.”
A complete desktop OS simulation that runs in a single HTML file, built with vanilla JavaScript. No build step, no npm, no Webpack — just open it in your browser and it works.
What’s changed since v2.0?
The numbers speak for themselves:

13 apps → 30+ apps (Calendar, Weather, Music Player, Mail, Chat, Notes, System Monitor, Password Vault, Tetris, Pong, Breakout, + Doom-Like FPS)
3 themes → 6 phosphor themes (Pink, Purple, White, and more)
4 wallpapers → 10 animated wallpapers (Rain, Snow, Fire, VHS, Galaxy, 3D Grid…)
Added AES-GCM encryption (Web Crypto API) for the Password Vault
IndexedDB instead of localStorage’s 5MB limit (50MB+)
PWA — installable as a standalone app, works offline
Voice commands — “open terminal,” “shutdown,” “lock”…
Window snap zones (Windows-style drag to edge)

Favorite feature: Game Launcher
I also built in an Unreal Engine integration system. If you have a WebGL build of your game, drop in the .wasm + .js + .data files, and the launcher automatically handles highscores, system requirements, and the gallery.
The architecture
14 logical modules, all in one file:

Bus — Pub/sub event system
IDB — IndexedDB wrapper
Crypto — Web Crypto API
Kernel — Luna Service Bus IPC emulation
FS — Virtual filesystem (recycle bin, drag & drop)
OS — Orchestrator (boot, login, windows)
…and 8 more

~3,500 lines of code. ~85KB. 0 dependencies.
What I fixed
Six significant bugs found during the v2.0 review:

Settings Green option was always “selected” (typo in the code)
Browser app’s inline onclick=“navigator()” — this was calling the navigator Web API, not a function (classic mistake)
Music Player beat interval cleanup memory leak
Tetris piece null reference on game over
Voice listener leak through the Bus
60fps mousemove → throttled to 50ms (60% less CPU usage)

v3.1 roadmap

Multiplayer over WebRTC (Snake, Pong, Doom)
Real audio file playback in the Music Player
Drag-from-desktop to taskbar (pin apps)
Undo/redo in the text editor
Gamepad API support for all games
Plugin system for community apps

Try it out
mateszko090214.github.io/WebOS
Full code, docs, and roadmap are up on GitHub. If you like it, drop a star!
“Bringing the 80s back to your browser, one pixel at a time.”

0
0
2

Followers

Loading…