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

Ombama

@Ombama

Joined June 24th, 2026

  • 27Devlogs
  • 8Projects
  • 5Ships
  • 60Votes
Open comments for this post

19m 10s logged

I improved the Nature app by adding challenge progress. Previously, all completed challenges whenever the broswer was refreshed. I added unique IDs to eaach checkbox and used JavaScript to save their checked states in localStorage. When the pages loads, the app reads the stored progress and restores each challenge automaticallt. I also updated the reset button so it removes both the checked boxes and the saved browser data. This ypdate helped me learn how multiple values can be stored together as a JavaScript object, converted into JSON, and loaded again later. The Nature app now behaves more like a real application because users do not lose their progress after refreshing.

0
0
5
Open comments for this post

47m 16s logged

I added the third working application to Om’s WebOS. The Nature app contains three daily environmental challenges that users can complete using checkboxes. JavaScript counts the checked challenges and updates the progress message automatically. I also added a reset button that clears every challenge. The app reuses the window system I previously created, so it can open from the desktop, move aorund the screen, minimize to the taskbar, maximize, restore, and close. This helped me understand how one reusable window system can support multiple applications without writing separate window code for each one.

0
0
8
Open comments for this post

55m 3s logged

It can now maximize and restore behavior. Welcome and Notes can now fill the usable desktop while leaving the taskbar visible. Before maximizing, the system remembers each window’s original position and dimensions. Clicking the maximize control again restores the previous window state. Maximized windows cannot be dragged until restored.

0
0
4
Ship

I made a Travel Budget Planner that helps users estimate the full cost of a trip. Users enter their destination, number of days, travelers, hotel, food, transportation, activities, and emergency-budget percentage. The app calculates each expense category, total trip cost, cost per person, and average daily cost. It also labels the trip as Budget, Standard, or Expensive, saves the latest trip, and includes reset and print options.

The most challenging parts were validating inputs, organizing the calculations, preventing incorrect results, and saving data with localStorage. I am most proud of the responsive design and visual budget breakdown.

To test it, enter trip details and click Calculate Budget. Also try missing fields, zero or negative values, refreshing the page, resetting the form, and printing the summary.

  • 1 devlog
  • 5h
  • 7.28x multiplier
  • 38 Stardust
Try project → See source code →
Open comments for this post

5h 11m 41s logged

The final project includes a responsive interface where users enter their destination, trip length, number of travelers, hotel cost, food cost, transportation, activities, and an extra emergency-budget percentage. JavaScript reads and validates the form, calculates each expense category, total trip cost, cost per person, and average daily cost. It also labels the trip as Budget, Standard, or Expensive and displays visual spending bars. I added currency formatting, clear error messages, reset and print buttons, and browser localStorage so the latest trip can be saved and restored after refreshing the page. The CSS includes cards, responsive layouts, mobile support, and print styles. The finished GitHub project also includes a detailed README explaining its features, calculations, technologies, file structure, and possible future improvements.

0
0
7
Open comments for this post

48m 24s logged

The WebOS window system was expanded with minimize and restore behavior. Open applications now recieve buttons in the taskbar. Clicking the minimize control hides the application while keeping its taskbar button available. Clicking the taskbar button restores the minimized window and brings it to the front. Closing an application removes its taskbar button completely.

0
0
4
Open comments for this post

29m 24s logged

The draggable window system was improved with desktop boundary protection. Application windows are now constrained to the visible desktop area and cannot be dragged beyond the screen edges or underneath the taskbar. The project also responds to browser resizing by checking all visible windows and moving them back into a safe position when necessary.

0
0
7
Open comments for this post

27m 17s logged

The WebOS now has draggable application windows. Users can now move the Welcome and Notes windows by dragging their title bars. Clicking or opening a window also brings it in front of other open windows using dynamically updated z-index values. The close button remains clickable without accidentally starting a drag.

0
0
5
Open comments for this post

47m 52s logged

The Notes application now has a working Save and Clear controls. Notes are stored in the browser using localStorage, allowing the title and note content to remain available after the page is refreshed or repoened. The Clear button removes both the visible text and stored note. A status message gives the user confirmation after saving or clearing.

0
0
3
Open comments for this post

21m 35s logged

A Notes application was added to the WebOS using the reusable application-window system. Clicking the Notes desktop icon now opens a separate window containing a title field and writing area. The Notes window uses the same close-button behavior as the Welcome window, demonstrating that one JavaScript system can control multiple applications. The interface was styled with labels, rounded input fields, focus effects, and a larger text area for writing notes.

0
0
2
Open comments for this post

40m 48s logged

I expanded from the basic introduction into the beginning of an interactive browser-based operating sytem/ The project now uses two separate pages: an introduction page with a Start WebOS button and a desktop page with a Back to Intro link.

On the desktop, I created a graident background, bottom taskbar, and six custom application icons: Welcome, Notes, Nature, Calculator, About Me, and Settings. I added custom image files for each icon and styled them with consistent sizing, rounded corners, and hover effects.

I also started the application window system. The Welcome app now has a window containing a title bar, tontent area, and close button. Javascript finds buttons with data-open-window, opens the matching window, and allows the close button to hide it again. I also corrected malformed button attributes and connected the Welcome icon to welcome-window.

0
0
6
Open comments for this post

1h 26m 34s logged

I created the first working version of Om’s WebOS using separate pages. The intro page explains the porject and includes a Start WebOS button that links to the main desktop page. I also added a Back to Intro button so users can return without refreshing.

On the desktop, I created a green-to-blue gradient background, a bottom taskbar, and custom icons for the Welcome and Notes apps. I learned how to organize images inside an images folder and display them using tags. I also styled the icons with rounded corners, hover effects, and consistent sizing.

One issue I fixed was an incoorect image file extension. the HTML used .png, but the real file was a .jpg. After correcting the path, the Welcome icon loaded properly.

Next, I plan to make the Welcome and Notes icons open working application windows with close, minimize, and maximize buttons.

0
0
6
Ship Changes requested

I made GreenSpace WebOS, a browser-based desktop environment built with HTML, CSS, and JavaScript. It includes five apps: Welcome, Notes, Nature, Settings, and Calculator. Users can open, drag, minimize, maximize, restore, and close windows, use a searchable Start menu, change wallpapers and themes, and save notes, progress, calculator history, and window layouts with local storage.

The most challenging parts were managing multiple window states, restoring saved layouts correctly, and making keyboard shortcuts work without interfering with typing.

I am most proud of the polished desktop experience, persistent app data, accessibility improvements, and built-in diagnostics.

To test it, open index.html with Live Server, try every app and window control, refresh to confirm saved data returns, test the keyboard shortcuts, and run Diagnostics from the Welcome app.

Try project → See source code →
Open comments for this post

1h 30m 41s logged

Added global application keyboard shortcuts, active-window controls, keyboard-focusable title bars, ARIA live announcements, dynamic taskbar accessibility states, visible focus indicators, editable-field shortcut protection, and Start-menu count synchronization.

0
0
10
Open comments for this post

1h 19m 23s logged

Added persistent desktop-state storage to GreenSpace WebOS. Window positions, sizes, open states, minimized states, maximized states, active-window state, and stacking order now survive browser refreshes. Added a Reset Windows control to restore the default desktop layout.

0
0
4
Open comments for this post

1h 54m logged

Added a working Calculator applcation with standard arithmetic operations, decimals, negative numbers, percentages, keyboard controls, calculation history, persistent browser storage, reusable history results, and divide-by-zero error handling.

0
0
5
Open comments for this post

1h 30m 45s logged

Added a Settings application with selectable Forest, Sunset, and Ocean wallpapers, light and dark window themes, a desktop-grid toggle, automatic browser storage, restored preferences after refresh, and appearance-reset functionality.

1
0
6
Open comments for this post

2h 54m 47s logged

Converted the Nature application into an interactive environmental challenge tracker. Added six activities, completed states, green points, a live progress bar, automatic broswer storage, restored progress after refresh, and rest functionality.

0
0
4
Loading more…

Followers

Loading…