Activity

LampDude

Shipped this project!

Hours: 78.8
Cookies: 🍪 2283
Multiplier: 28.97 cookies/hr

I just finished building RobbieOS, a custom webOS inspired by the best parts of MacOS, iPadOS, Hyprland, and Windows 11. Created entirely with vanilla HTML, CSS, and JS. It features a custom window manager with multitasking and snap assist, a persistent virtual file system using IndexedDB, and apps including a File Explorer, Terminal, Drawing App, Music Player, and much more! The most challenging part of the project was definitely the file management system, with so many types of file types, organization structures, and features, the file manager gave me so many headaches but in the end, I think it was all worth it! The file system is fully dynamic and is pretty fun to play around with! I am also proud of the aesthetic, the glassy feel inspired by Hyprland just looks too good… It was a great way to see just how much you can build with only some HTML, CSS, and JS. This was a wonderful learning experience and the most surprising thing i learned was how you could style the scrollbar differently in different browsers

LampDude

The project has been completely polished and cleaned up with a little help of AI code reformatting. This project really has been a wonderful learning journey. There has been many weird issues and obstacles but in the end, I created RobbieOS successfully. I am really proud of what I have created. Here are some bugs that I have fixed:

  1. removed the 1 2 3 4 buttons at the topbar, (I forgot what I added it for ngl)
  2. some window border formatting styling issues
  3. file name cutoff seam fixed
  4. music app icon fixes
  5. custom wallpaper fixes
  6. font issues in terminal fixed
  7. quick search app suggestion fixed
  8. scrollbar formatting fixes for chrome
  9. search bar added for music app
Attachment
0
LampDude

okay. I might have gone just a tab bit off-track. Maybe added a little to much fro my webOS. But hey, the more the better! Introducing: Robbie Music!

This could be a whole other project but I decided to add it into my webOS because a good OS always has a good music player :)
ok maybe this is a bit toooo much for just a default music player, def could be a whole other project lol.

Anyway here is the complete set of features Robbie Music has:

  • clean, theme friendly interface heavily inspired by Apple Music and Spotify
  • loyalty free music browser (this one is possible with a bit of AI usage, surprising the music selection isn’t too bad)
  • auto detect downloaded music support from in-OS file explorer
  • lyrics feature with color changing theme and scrolling
  • metadata support for downloaded music (album images, artist, album, etc)
  • playlist creation support (with custom playlist picture, renaming, and deletion)
  • music queue
  • music shuffle
  • music organization (search bar, artist page and album page)

Honestly, I am pretty proud of this. I think this is the 2nd thing that I’m most proud of (behind the file browser ofc) in my little webOS. If it has actual music instead of just loyalty free and downloaded ones, I would prob use this as my day to day music app lol.

P.S: I have also added a minimize window feature instead of the previous 2 options (open and close). Now you can minimize windows in the background! very cool :)

P.P.S: I think the webOS I want is mostly done, this has been a great journey. I’ll polish it up and ship it probably tomorrow.

0
LampDude

Music interface (inspired by apple music) and music playing feature + metadata display is completed! None of the buttons work execpt play rn, just concepts for now but they will soon be added, they shouldn’t be that hard to implement right…?

right…?

well I’ll can probably get this thing done by next week. maybe. The main features I’m looking out for is lyrics, playlist creation, and data organization, getting & moving music is going to be a pain, I can just feel it

Attachment
0
LampDude

Ehhh.. I might have got carried away a little. I realized how important music is and I have decided to expand my OS to include music. You can now import any music file into the browser and it detects it! (Still gotta figure out the playing part tho..) I have also added a magnetic taskbar hover effect which I think looks pretty sick. I think what I’m gonna do for the music player is I’m going to go big. like REALLY big. Hopefully it works out well for me lol. (It will probably take me the whole rest of the week.

Attachment
Attachment
0
LampDude

Quick update: I have created a status bar or whatever you call that top bar that shows system info and date and battery etc, looks pretty nice, I’ll be jumping back to making a music player now :)

Attachment
Attachment
0
LampDude

I have added a Quick Search function that users can open with ctrl+ spacebar It is inspired by MacOS where users can open apps by typing the app’s name. Suggestions have also been added for easier access. I have also cleaned up some bugs from the file system.

Attachment
Attachment
0
LampDude

Ok… I know this is a pretty long time without writing a devlog but I promise that there is a reason. The reason is: I HAVE THE FILE SYSTEM 80% COMPLETED!! I believe I have cooked pretty hard, first of all, starting small, I took inspiration from macOS about displaying file names, before, I didn’t set a visual limit of displaying file names which would look really unpleasant with long file names, now, ellipses will appear at the middle of the file name like macOS, leaving the front and file extension always visible improving usability. I have also added a properties menu to display their full file name, the size, and file type. Now for the fun part, I have made 2 more file types!! I have added a custom .drw file type that goes along with something like a very simple window’s paint (its just a basic sketchpad with a basic draw/erase feature lol). But you can now save your magnificent drawings in the OS! Support for PNGs, JPGs, and GIFs are also added with a new photos app and you can import your photos to the OS just like txt files! It’s been a long process but it is SO worth it.

Attachment
Attachment
Attachment
Attachment
Attachment
Attachment
Attachment
0
LampDude

Finally implemented the first file type and made the storage system work! Completely new to doing this so I did ask a friend some questions (he is a javascript EXPERT) but now I think I got it and can make more file types by my self :D . txt files are now completely usable with the ability to view existing files, create new ones and even drag and drop your own files from your OWN computer!! I am pretty proud of what I have created, this system is pretty insane to play around with, it really is starting to feel like a real, working OS now…

I will be expanding upon this and add more file types and will probably run into a load of more issues, but for now, I think I’ve cooked.

Attachment
Attachment
Attachment
0
LampDude

So there has been a bunch of problems with my file explorer, I never really thought about just how much features a file explorer needs to function properly and be easy to use… Well anyways I still have a lot to get done, especially with implementing actual files themselves but here is what I have done so far, I think every needed feature has been mostly added, I might be wrong though:

  1. Everything from previous devlog
  2. the ability to select multiple files and doing all those actions
  3. the ability to type the path into the path bar and go there (yes even though it showed in the previous devlog you could not type into it before lol)
  4. selection squares or whatever they are called and in-between selections, select everything in between two clicks while holding down ctrl or shift
  5. The ability to duplicate, copying the content inside of them and making a new folder with those exact contents
  6. The ability to copy, cut and paste files or folders
Attachment
Attachment
Attachment
Attachment
Attachment
0
LampDude

This have been stressing me out in recent days, still working on file management, so far it is partially complete, you can create new folders, renames them, and basic files though not text, image, or anything else besides a placeholder. I have also implemented a storage system (placeholder, doesn’t really work correctly) along with all the very basic features, renaming, deleting, moving

Attachment
Attachment
Attachment
0
LampDude

I added a file explorer UI that fits the rest of the OS with some basic clicking functionality, inspired by windows OS. 2 basic starting types, folders and txt files, none really functions just there for show for now.

Attachment
Attachment
0
LampDude

Terminal commands have been added! here is every command and what they do in the screenshots below!

The settings app now opens up to 4 wallpaper options, the wallpaper doesn’t just change the bg image, it also changes the accents of the app! Take a look at the screenshots below!

Now here is what I didn’t think was hard but was REALLY hard to implement in a webOS. THE BROWSER. The issue was that many modern day websites have security measure to prevent it from working in a iframe, which is the only way to get another site on a website, all the search engines have it blocked off. I saw that many who have tried this either

  1. doesn’t work, displays could not connect error in the browser.
  2. just doesn’t have a web browser in their OS.
    and with good reason because I’ve tried several ways to get it to work good, 1st by using proxies to load blocked off sites like github and youtube. The downside is that many sites STILL detect that and blocks me from even trying to connect. The proxy way is also extremely slow, it takes about 10 seconds for the average webpage to load. The 2nd way was by redirecting users to any blocked off sites to a actual tab in their actual browser, but after testing it out, it really just breaks the immersion and defeats the whole purpose of a web browser inside a webOS.
    3rd and final way was to go small. after searching for a bit, i found that you could embed any google.com link with a &igu=1 after the url. It worked. After seeing so many “google.com refused to connect” messages I was finally presented with a working google search and google home page. It was like magic from the heavens above (though with the sacrifice of using just a default iframe and not connecting to several sites in the webOS but hey the hack club websites works though!!).
Attachment
Attachment
Attachment
Attachment
Attachment
Attachment
0
LampDude

Window resizing has been added and added the animations for window moving, You can now freely size the window to your desire. I also added a complex multitask split screen feature. Users can drag a window to the top of their screen, similar to windows, and snap it to a position. I think it looks really nice and functions pretty well. I think I’m going to add some actual commands to the terminal next and start working on a browser

0
LampDude

Bad news, my laptop’s keyboard is unusable, I have no clue what happened but my e,d,3,F1, and F2 keys completely stopped functioning so I’m gonna use a very old Microsoft surface to complete this project.
Currently, after hours of figuring stuff out and trying a bunch of layouts here is what I came up with: the style is heavily inspired from Hyprlan Rice (the glassy look) and MacOS (top bar and dock). I currently only have 1 openable app which is the console. The window style is heavily inspired by ipadOS with the three dots at the top that you can drag around, fullscreen (left click), and close (right click). I also implemented a clean animation inspired by Hyprland. Other apps are not functional at this time.

Attachment
Attachment
0
LampDude

Shipped this project!

Hours: 14.53
Cookies: 🍪 390
Multiplier: 26.85 cookies/hr

I just built Robbie Vehicle Physics, a custom Unity Vehicle Physics system with custom wheel colliders (not using Unity’s built-in ones). My biggest challenge was implementing a multi-contact Mesh Sweep system from scratch; because there is very little resources on how to use SweepTestAll for vehicle wheels, I had to create my very own solution to handle it which I am SUPER proud of. I’m also particularly proud of how the system processes multiple collision points to maintain suspension stability on complex geometry, far surpassing the jitterness often found in standard Raycast implementations. To make tuning easier, I also learned to build a custom GL-based debug system that visualizes wheel outlines, hit normals, and suspension compression in builds which normally you would only see in teh editor.

LampDude

Overhauled the system, previously, the wheel collider only supported one contact point, which meant that when the wheel is wedged between a gap, it would flicker. now with a few changes like using Sweepcastall instead of just sweepcast, the wheel can now have multiple contact points at the same time. I also overhauled the gizmos system with a little help from AI adding suspension meters, contact points, and a more robust gizmos system overall.

Attachment
0
LampDude

I THINK I COOKED!!!! Finally completed suspension AND traction. By applying Hooke’s Law, my system now calculates upward forces using spring stiffness and damping to simulate weight and shock absorption, this took me so much time to figure out how to make it and how to make it work with my sweepcasted wheel instead of the traditional singular raycast. I also added a arcade traction system using a friction curve to balance steering. It’s almost complete! I just need to make it look nicer (custom editor maybe???) and make my code presentable (it looks kinda messy rn)…
But this is a huge milestone! I’m very proud of what I’ve achieved :)

0
LampDude

Basic wheel collision finally works! Now it goes up bumps and ramps like expected, it just doesn’t have suspension. I’m avoiding suspension right now, It’ll probably be the hardest part…

Attachment
0
LampDude

I have successfully set up the gizmos and started to test out my rigidbody.sweeptest! Its not perfect as there is no collision yet but it detects the wheel I have configured correctly. It’s a huge step in achieving a better and more robust wheel collider.

Attachment
0
LampDude

Setting up the testing scene and importing a car model into unity URP! This car would surely fly sometime when im developing the wheel collider…

Attachment
0