karretOS banner

karretOS

22 devlogs
35h 18m 10s

A very minimal, classy and optimized webOS.

This project uses AI

used AI for a bit of refactoring especially when i tried to deploy it on github but that sucked so now its deployed on vercel.

Demo Repository

Loading README...

Cunning Cat

Shipped this project!

Hours: 7.32
Cookies: 🍪 206
Multiplier: 23.51 cookies/hr

đź›  Fixes & Optimizations

  • Contrast Correction: Fixed theme issues where text (like usernames in settings) was rendering black-on-black; improved overall readability across the UI.

  • Performance Boost: Implemented optimization fixes to the app launcher and general system snappiness for a faster “WebOS” feel.

  • External Integration: Fixed the non-display of WakaTime stats within the Portfolio app.

  • Simplify portfolio: Portfolio is now simpler and not filled with wakatime info (privacy concerns)

✨ New Features

  • Command Palette: Introduced Ctrl + K functionality for quick navigation and system-wide searching.
  • Glass Surfaces: Added three distinct window types (Glass, Solid, and None) allowing for glossy aesthetics or atomic custom styling per app.
  • Pinning Logic: You can now pin/unpin apps to the dock; unpinned apps now show a temporary icon that disappears upon closing.
  • Experimental Toggles: Added a “Experimental Features” section in settings to toggle experimental features on or off, allowing for more risky features without breaking the core UX.
  • Session Management: Added a “Suspend” button to the launcher to quickly return to the lock screen.

🎨 UI & UX Improvements

  • Visual Rebrand: Migrated the icon set to Phosphor Icons and adopted the Carrot 🥕 as the official project mascot/favicon.
  • Structural Split: Divided the “App Launcher” into two distinct entities: a functional Launcher and a dedicated App Store.
  • Dock Evolution: Removed the redundant top bar in favor of an “always-visible” dock; added a dynamic label expansion for the currently active app.
  • New Apps: Integrated Excalidraw and Photopea directly into the ecosystem.
  • Wallpaper Engine: Expanded background options beyond the default, allowing users to choose custom solid colors or curated images.
  • App Hierarchy: Promoted the Terminal to a core system app status.
  • Widget Relocation: Moved desktop widgets into the dock for a cleaner, less cluttered workspace.
Cunning Cat

here are some pics for you guys….

Attachment
Attachment
0
Cunning Cat

added a basic command pallete (ctrl+k)
[pretty self explanatory]

Attachment
0
Cunning Cat

Changelog

  • Redid the entire theme (its better contrast now)
  • New icons (mostly migrated to phosphor icons)
  • Other improvements
Attachment
Attachment
0
Cunning Cat

Dock & App Wndow Updates

You can now pin/unpin apps to dock (no more dock and icons going out of your screen). Few of the apps are pinned by default but you can unpin them app too. For apps which are not pinned but you open them, their icon shows up in dock separate from the pinned icons and gets removed once you close the app.


Other changes

  • Three types of window surfaces: glass (for glossy appearance, solid - solid bruh what do i write for this, and none for custom styling so that i can customize each app more atomically now)

  • Suspend desktop session using button in launcher (just moves you back to lock screen)

attached: 1) no app pinned 2) updated launcher with pin button and glass bg (firefox issue - cant take blurs in screenshot) 3) opening notes (unpinned) along with some other pinned apps.

Attachment
Attachment
Attachment
0
Cunning Cat

Oh yeah I’m a person who can totally not decide what features to add and what features not to add so I think I’ll let it be on you guys. You just turn on and turn off all these experimental features now and these little things I may just remove because I don’t think they look useful but if you want you can just enable them and have them. It’s experimental features that way I can add all my back features back and just disable it. Yeah let’s go

Attachment
0
Cunning Cat

New Apps & Launch Menu

New apps: Excalidraw and Photopea

User pill in app launcher (and optimization fixes)

Fix non-display of wakatime stats in portfolio app

Attachment
Attachment
0
Cunning Cat

Changelog

  • Split app launcher into launcher and app store
  • Unix and ISO timestamps
  • Widgets are now moved to dock
  • Terminal is now a system app
Attachment
Attachment
Attachment
Attachment
0
Cunning Cat
  • changed icons and favicons to carrot (cuz why not - carrot’s gonna be this project’s official mascot or rather vegetable lmao)
  • you can now choose backgrounds instead of just two options: solid or default background
  • better dock styling (Transparency yay) and now the current active app’s label expands.
  • widget for greeting has been improved with branding text
  • app launcher was optimized and restyled
Attachment
Attachment
Attachment
0
Cunning Cat

removed topbar and made the dock to be always visible. i’m working on UX now and polishing stuff and stuff. I removed the topbar which seemed redundant and not so useful to me. Also i removed the click/hover to show the dock, although that let me admire the desktop and stuff and gave me more space that was not very user friendly. now the launcher (search icon) is left aligned with a tiny bit of spacing in it and the app icons. I’m gonna work on pinnable app icons just like it is in Windows so it doesn’t clutter toooo much ;)

Attachment
0
Cunning Cat

Shipped this project!

Hours: 14.95
Cookies: 🍪 326
Multiplier: 21.79 cookies/hr

it is hard to have a comeback after 2 weeks of afk-ness. still i built some stuff, mostly optimization (sad i can’t ship it for multiple sidequests). there’s a devtools, better settings, more speed in this ship.

Cunning Cat

apps are now lazy loaded to have a much faster initial boot time and save on memory. made some animations smoother. now apps without sidebar have a solid background by default (can be overrided) and a better boot screen (no loading bar progress %tage and a better unlock button)

0
Cunning Cat

after a few weeks of no coding due to personal reasons, i am back. worked on devtools (ignore the lack of blur in the screenshot)

Attachment
0
Cunning Cat

Resizable windows

How it works

  • useSession.ts holds the “source of truth” for size + position
  • AppWindow.tsx renders the window using that size/position
  • react‑rnd tells us the new size/position when the user drags/resizes

1. useSession

it has size: {w,h} and offset : {x, y} which decide the width/height of the window and where it sits on the screen.

2. default size/position

by default, window gets 80% of screen width and 70% height (clamped to ~960x640 so it doesnt get huge)

  • a random offset is added so windows are not perfectly stacked when opened.

react-rnd

replaced default framer’s drag with the react-rnd library which saves the new x/y on move or w/h on resize, passes it to useSession and now it renders on new position or new height/width.

0
Cunning Cat

Lock screen, top bar and back end updates

I cleaned up a lot of logic and performance optimizations. the top bar was tricky to make due to the existing project structure, finally figured it out by re doing the shell and environment layouts and add a top margin so that windows don’t go over the top bar.

Simplified framer animations and stuff that you won’t really see on the demo but it works smoother and faster now. Stuff like z-index configuration, removing unused noise overlays which put a lot of load on the rendering process. I also removed layout property in dock’s motion animations to make the UI sleek and light.

Portfolio App’s wakatime stats section was redesigned and should work now.

Attachment
Attachment
0
Cunning Cat

Dark Mode, New Widgets and Layout

(see 2nd pic for older layout)

1. DARK theme. I dont want to blind you folks

Every element and component has been inverted so the default theme is now dark (and thats the only theme)

2. Greetings widget

that guy looked awkward in the left side so made it a widget like other stuff and moved to right (it will be customizable later)

3. App Drawer Bg

it looks better (especially on mobile devices) and now you can also know the number of apps

and yeah quickcontrols is remvoed

Attachment
Attachment
0
Cunning Cat

NEW WINDOWS APP & LOCK SCREEN

THIS is what windows deserve and yeah also made a minimalist lock screen
@rupnil.codes this is for yaaa

Attachment
Attachment
0
Cunning Cat

Refine the visual system, new reusable components, and improved core interactions, clean up etc.

Features

  • Introduced a new visual configuration hook and applied it across the UI for consistent blur and transparency behavior
  • Added a new set of reusable components and migrated existing parts of the app to use them
  • Implemented an icons-only dock with click-to-open interaction
  • Enabled launching apps directly through the terminal
  • Added automatic portfolio launch on system boot
  • Updated portfolio projects with latest content
  • Added a new favicon

UI / Style

  • Updated background styling
  • Replaced emojis with icons in the settings app for a cleaner interface

Refactoring

  • Standardized internal code structure and patterns
  • Renamed style settings to clearer background and transparency modes

Chores

  • Removed legacy blur and opacity modules after migrating to the new visual system
  • Replaced default Vite assets with project-specific favicon
Attachment
0
Cunning Cat

Blur Configuration, WindowLayouts, Widgets update

I added a widgetUpdater hook to simplify widget updates. Also added detailed weather view (apparent temperature etc etc). Background and opacity levels are now independent (and not stored in local storage to simplify logic). Icons and components are now blurred and made transparent on the choice
WIdgets are now shown on smaller devices too. Also created a WindowLayout component to have uniform styling and layouts for all apps with ability to set custom header and footer. Also the titlebar is now spread out as in widnows (left side name of the app and right side controls). Full screen is better with less space left around

Attachment
Attachment
Attachment
0
Cunning Cat

Shipped this project!

Hours: 12.97
Cookies: 🍪 250
Multiplier: 19.27 cookies/hr

Built the webOS finally. Its basic but works i absolutely love the monochrome theme and slight aniamtions

Cunning Cat

Fixed the vercel deployment after hours of messing up with github pages

New Stuff

  • Terminal App
  • kNotes App
  • Basic settings with background and opacity controls
  • Analog clock
Attachment
0
Cunning Cat

Fixed windows z-indices and added a iframe test app called Pomdoro app
Bonus: it also has a cool loading screen now

Attachment
0
Cunning Cat

Added minimized view and some widgets!

Attachment
0
Cunning Cat

This is looking so cool ngl. Made it the karretOS

Attachment
0
Cunning Cat

v3 of my portfolio that’s more than just a portfolio. It’s a browser(or os? or a start-page) from the future. [still working]

Attachment
0