DEV Community

Cover image for I Built a Chrome Extension - Sidekick
Sheyahi
Sheyahi

Posted on

I Built a Chrome Extension - Sidekick

As a huge sports fan, I always found one thing missing while watching live matches.

Sometimes I wanted to celebrate a goal, discuss a referee decision, or react with my friends—but I didn't want to switch to Discord, WhatsApp, Reddit, or X. I wanted everything to happen right beside the stream.

So, I decided to build Sidekick.

The Idea

Sidekick is a Chrome extension that lets people watching the same sporting event join a shared room and chat in real time without leaving the video.

The extension detects the current sporting event, creates or joins a room, and lets fans interact through messages and reactions.

Tech Stack

  • JavaScript (ES Modules)
  • Chrome Extension Manifest V3
  • Supabase
  • Supabase Realtime
  • Groq API
  • TheSportsDB API

Some Interesting Challenges
Detecting the Match

The extension first collects information from the current webpage:

  • Page title
  • Headings
  • Meta description
  • Website hostname

This information is sent to an AI model which determines whether the user is watching a sporting event and extracts details such as:

  • Sport
  • Competition
  • Teams
  • Event name

Avoiding Repeated AI Calls

Running AI every time someone joined the room would have been wasteful.

Instead, only the room creator performs match detection. The detected match is stored, and everyone else who joins receives the already-verified information.

This greatly reduced API usage.

Team Badges

Once the match is identified, the extension fetches official team badges (or country flags when appropriate) so users can immediately choose which side they're supporting.

What's Next?

I'm planning to continue improving Sidekick by adding better moderation, richer reactions, chat synchronisation, and additional ways for fans to interact during live events.

Building this project taught me a lot about Chrome extensions, real-time systems, and integrating AI into practical applications.

If you've built a browser extension before, I'd love to hear about your experience or any suggestions for improving Sidekick.

Top comments (0)