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

Minimalist OS

  • 5 Devlogs
  • 17 Total hours

a very minimalist OS

Ship #2 💀 Cursed

I finished my WEB OS . It took way longer then expected , i spent way to mush time reading articles and watching countless YouTube tutorials. I could have completed this project with my existing skills too but i wanted to use this opportunity to learn and improve. I did use AI wherever i got stuck, or have to solve some bug and for structuring my files and code .
New Features:
- Added some basic games (snake, Tetris)
- Added a boot animation
- Wallpaper app
- Resizable windows
- A fully customisable clock in centre
- Gallery App
- Overall structure was improved like putting apps in dock to save space in bottom bar

  • 4 devlogs
  • 11h
  • 14.42x multiplier
  • 80 Stardust
  • WebOS 2
Try project → See source code →
Open comments for this post

4h 30m 56s logged

- Core Stabilizations and UI Additions

Technical Changes

Window Manager (Gallery Bug): Fixed a critical rendering issue where the Gallery window dropped. The window had no default dimension in the openWin() switch statement, and so did not match up with the CSS min-width constraint, leading to positional calc() errors. The explicit dimensions (600x500) solved the layout thrashing.

  • Desktop Clock Widget: New clock widget that shows the current time, and is customizable and placed on top of the window manager’s stacking context but under the wallpaper layer.
  • Asset Pipeline Refactor: Got rid of all redundant and large local media files from the wallpaperList. Optimized to a single remote CDN image to avoid 404’s and limit local storage costs.
  • Boot Sequence UI: Changed linear opacity fades to a CSS3D transform that is accelerated by hardware.
/* Boot sequence 3D transform snippet */
.boot-logo {
  animation: bootLogoAnim 2s cubic-bezier(0.22, 1, 0.36, 1) infinite;
  transform-style: preserve-3d;
}
0
0
3
Open comments for this post

4h 25m 5s logged

What Changed This Session

Spent a few hours cleaning up the project and adding some stuff that was missing. Main things were reorganizing the files, adding proper app folders to the dock, wiring up Tetris and Snake, and making the terminal actually worth using.

Project Structure

The original had everything dumped in the root folder — HTML, JS, CSS, MP4s, all mixed together. Moved media files into their own folder so at least it looks intentional.

webos/
├── index.html
├── css/
├── js/
└── media/

Not revolutionary, but it was bothering me.

Dock Folders

The dock had too many individual icons and was getting messy. Grouped everything into three folders instead:

  • Tools — Notes, Terminal, Calculator, Settings
  • Games — Tetris, Snake, Pixel Art
  • Media — Music Player

Clicking a folder opens a small window, then clicking an app inside launches it. The dock went from 8+ icons to 6. Also moved Settings into Tools because it was sitting in Media for some reason, which made no sense.

Games

Added Tetris and Snake. Both run on canvas, each in their own JS file so they don’t pollute apps.js.

Tetris

  • Ghost piece
  • Wall kicks
  • Hard drop with the Space bar
  • Speeds up every 10 lines

Snake

  • WASD or Arrow Keys
  • Apple won’t spawn on the snake body

Also fixed the icons for both. They were using random SVGs that had nothing to do with the games.

  • Tetris now shows an actual T-tetromino shape.
  • Snake shows a little body of blocks with a pink apple dot.

Terminal Commands

The original terminal had about one command and it was useless (help). Rewrote the whole thing with stuff that I’d actually use:

  • wp fuji/stars/matrix — Swap wallpaper without touching Settings
  • theme dark/light — Quick theme switch from the keyboard
  • calc 12*8+4 — Math without opening the Calculator app
  • neofetch — Uptime, browser, current wallpaper, theme
  • close <app> — Close any app by name
  • cowsay
  • fortune
  • flip
  • roll 20
  • color #hex — Inline colour swatch
  • history — Last 20 commands
  • rm -rf / and sudo — Try them
  • help — Actually shows all of the commands
0
0
1

Delete project?

Are you sure you want to permanently delete this project? This action cannot be undone.

All devlogs, followers, and associated data will be removed.

Followers

Loading…