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

23h 11m 3s logged

OKAAAA WE’RE BACCKKK.. aaa so i did all of the basic stuffs in the webos1 (mandatory features, basic glass morph for the windows, parallax effects on the wallpaper etc) so now in the part 2… its time to take this further…

so i started with fixing the lag and some minor bugs and then we redesigned every window and dock with an aurora tint and enhanced glassmorphism with glare and then came the features that i added… i mean they are not complete but the base is ready

the dock got upgraded
added a Files app(new feature..yey) to the dock with a sky blue gradient icon. the file manager opens with a proper glassmorphic window. breadcrumbs for navigation, grid and list views, right click menus, inline rename… the whole deal. double click a file and it opens in an editor with Ctrl+S to save. tab inserts spaces. its got the mewoOS glass treatment on everything

what is meo (new feature…yey)
so meo is basically the AI assistant that lives inside MewoOS. think of it like Siri but actually useful and with personality….a menace on silicon.
u tap the orb, speak to her, and she responds. she can open apps, close them, minimize, maximize — basically control the whole OS with voice. she has emotions too — happy, excited, concerned, playful, calm, tired, urgent — and her voice changes based on that. she roasts u but its from love. like a best friend who also happens to be an AI running inside an operating system
the whole thing runs on Gemini — both the brain (chat) and the voice (TTS). she uses Gemini 2.5 Flash for thinking and Gemini 2.5 Flash Preview TTS for speaking back to u with different voices depending on her mood

now the part that took forever — making meo actually work
bruh so making meo work took some work… idk how many times i debugged for her to actually listen to me
the STT problem
so the original problem was the Web Speech API — that thing is just unreliable as hell. it only works in Chrome, needs HTTPS or localhost, and half the time it just doesnt fire onresult at all. like u speak, it says “listening…”, then nothing happens. the text never shows up. no transcription, no response, nothing
i tried fixing it multiple times — started recognition immediately instead of waiting for mic permission, added error handling, changed the flow… still broken. the Web Speech API is just built different (bad different)
so i ripped it out completely. replaced it with MediaRecorder + Gemini for transcription. now when u tap the orb it records audio using the MediaRecorder API, sends the audio blob to Gemini, and Gemini transcribes it. way more reliable because it doesnt depend on browser-specific speech engines. it just works
the gemini model error
THEN the gemini model error… we had the wrong model names everywhere lol

  • the chat model was set to gemini-3.5-flash which literally doesnt exist
  • the TTS was gemini-2.5-flash-preview-tts which kept failing silently and falling back to browser TTS
  • the STT was using gemini-2.0-flash which was mid
    so we updated everything to the right models:
  • chat: gemini-2.5-flash (the actual latest flash model)
  • TTS: gemini-2.5-flash-preview-tts (the dedicated TTS model with audio output)
  • STT: gemini-2.5-flash (for transcribing the recorded audio)
    and added detailed console logging so we can actually see whats happening when things break. because before it was just silently falling back to browser TTS and we had no idea why
    the final pipeline:
  1. u tap the orb
  2. MediaRecorder starts capturing audio from the mic
  3. waveforms animate while u speak
  4. u tap again to stop
  5. audio blob gets sent to Gemini for transcription
  6. transcription goes to Gemini for the actual response
  7. Gemini responds with text + emotion
  8. response gets spoken back using Gemini TTS with the right voice
0
80

Comments 1

@subhansh

oop… its all bold in the first section of teh devlog💔