[{"data":1,"prerenderedAt":29},["ShallowReactive",2],{"homepage-recent-articles":3},[4,17],{"path":5,"title":6,"description":7,"date":8,"tags":9,"image":15,"imageAlt":16},"\u002Fblog\u002Fbuilding-local-first-browser-tts-studio-kokoro","Building a local-first browser TTS studio with Kokoro","How I built LocalVoice Studio to generate speech in the browser, and what AI-assisted development still needed to make it shippable.","2026-03-28",[10,11,12,13,14],"ai","tts","local-first","accessibility","testing","\u002Fimages\u002Fblog\u002Fbuilding-local-first-browser-tts-studio-kokoro.png","A cyberpunk illustration of Martin in a neon-lit recording studio operating a futuristic audio console. Glowing soundwaves flow from a 'Kokoro ONNX' hopper, surrounded by Vue.js holograms and an 'AI Speed' rocket anchored by chains labeled 'Linting' and 'Accessibility'",{"path":18,"title":19,"description":20,"date":21,"tags":22,"image":27,"imageAlt":28},"\u002Fblog\u002Fdebugging-timezone-chrome-devtools-mcp","Debugging remote timezone issues with Chrome DevTools MCP","How a timezone bug turned a calendar date into a wrong day, and how Chrome DevTools MCP helped debug it without leaving VS Code.","2026-03-14",[23,24,10,25,26],"mcp","debugging","devtools","vitest","\u002Fimages\u002Fblog\u002Fdebugging-timezone-chrome-devtools-mcp.png","An editorial cartoon of a developer caught between two giant glowing clocks showing different times, surrounded by neon-lit debugging tools and timezone labels.",1778941875057]