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

16m 53s logged

Devlog 3 — “ver 7”

Devlog 1 drew the canvas. Devlog 2 built the OS. This one was about cutting features, fixing bugs, and shipping something I’m proud to show.

What’s in ver 7

ÆTHER OS ver 7 is a cosmic WebOS built with HTML, CSS, and JavaScript. No framework, no build step, no runtime dependencies—just one HTML file, one CSS file, four JS files, and ~5,500 lines of code.

The apps

Ships with 9 built-in apps:

  • Void Navigator — file explorer with folders, breadcrumbs, drag-and-drop, and wallpaper controls.
  • Stellar Terminal — 18 commands including ls, cd, mkdir, mv, rm, neofetch, warp, and js.
  • Prism Editor — line numbers, minimap, find/replace, themes, tabs, and Ctrl+S saving.
  • Starlog — Markdown notes with search, live preview, and auto-save.
  • Nebula Calc — scientific mode, DEG/RAD toggle, history, and expression rewriting.
  • Pulse Monitor — live CPU, Memory, Network, Disk, and GPU charts with a process list.
  • System Core — wallpapers, uploads, accent colors, dock settings, sounds, and reset.
  • Cosmos Info — animated system specs and uptime.
  • Shortcuts — keyboard shortcut reference.

Window system

Supports draggable titlebars, eight resize handles, edge and corner snapping, double-click maximize, triple-click zoom, minimize-to-dock animations, z-order updates, Alt+Tab switching, and a shared drag state that eliminates listener leaks.

Virtual filesystem

Everything is backed by one JSON tree stored in localStorage (aether:fs).

The Terminal, desktop, File Explorer, and editor all use the same data. Move or delete a file anywhere and every app immediately reflects the change.

Polish

Added custom scrollbars, purple text selection, Google Fonts with preconnect, focused window glow, boot typing effects, dock magnification, spring animations, notification toasts, and six synthesized Web Audio sounds.

What I cut

Earlier builds contained more apps. I removed everything that wasn’t solid enough to ship. Nine polished apps are better than shipping unfinished features.

Bugs fixed

Twelve major release blockers, including:

  • Window manager listener leaks
  • Frozen menu bar clock
  • Broken triple-click zoom
  • Volume slider not affecting sound
  • Pulse Monitor interval leak
  • Missing desktop.js
  • Music player syntax error
  • Maximized windows behind the menu bar
  • Ctrl+W closing the browser
  • Scientific calculator layout
  • Calculator expression parsing
  • Starlog auto-save race condition

The biggest fix was replacing per-window event listeners with one shared drag system, eliminating multiple unrelated bugs at once.

What I learned

  1. Cutting is a feature. Shipping fewer polished apps beats shipping more unfinished ones.
  2. One source of truth. The virtual filesystem is a single JSON tree shared by every app.
  3. Event listeners accumulate. Install shared listeners once instead of per object.
  4. Fix root causes. One fix in shared code is better than many patches.
  5. Cleanup matters. Every timer or interval created must be cleaned up when a window closes.
  6. UI should never lie. If a control exists, it should actually control something.

✦ breathe the void


P.S. Devlog was delayed. I forgot to post devlog 2 and just kept building, so Hackatime only shows 16 minutes on this one. The code didn’t write itself—I simply forgot to log the voyage. ;)

0
1

Comments 0

No comments yet. Be the first!