Inspiration
Long browsing sessions are overwhelming. We wanted to create a system that helps people think clearly online by structuring their digital workspace, not just their tabs.
What it does
Tabby lets users create isolated, context-based workspaces for different projects or tasks. It automatically organizes, cleans up, and restores tabs using AI analysis and user preferences, keeping your browser focused and relevant to the work you’re doing at the moment.
How we built it
Tabby is built with React, TypeScript, and Tailwind CSS for a responsive, clean interface. Data synchronization is managed through Dexie.js, which store the state of tabs and groups. A background service worker monitors changes in real-time, ensuring that what you see in the dashboard always matches the actual browser state without manual refreshes or delays. We used WXT, a Vite-powered framework for building web extensions, which made development much faster and provided a smooth DX with hot reloads and modern build tooling, it was really good to work with.
Challenges we ran into
The biggest challenge was maintaining perfect synchronization between the browser’s native tab system and our own management layer. Also, handling a large number of tab and group actions efficiently through the Chrome Extensions API. The API itself is powerful and well-documented, but coordinating real-time updates, scheduling tasks, and managing browser state required some trial and error to get right.
Accomplishments that we're proud of
We achieved seamless, reactive updates that make the extension feel native and instant. The system reliably tracks every tab and group, maintaining consistency even after browser restarts or crashes.
What we learned
We learned how complex modern browser ecosystems are, and how important it is to treat tabs not just as open pages but as data objects with state, history, and relationships. We also discovered the value of blending UI responsiveness with backend precision.
What's next for Tabby
Tabby is not perfect, it has some rough edges that should be cleaned up in the future
Built With
- dexiejs
- firebase
- gemini
- typescript
Log in or sign up for Devpost to join the conversation.