GriD. / Index

Studio navigation

Available for selected projectstharunsmohan@gmail.com
← Back to Work
05 / Multiplayer / Social DeductionIndependent project / Tharun

Imposter.

Shared rooms. Private information. Real-time play.

A social deduction game built around shared rooms, secret roles, clues and voting — with private information kept in the player’s hands.

Visit Live Website — Imposter. (opens in a new tab)
Product in focus / Imposter.Design → Engineering → Delivery
Imposter purple retro landing screen with host and join controls, radio and record player.
01 / Open the room
01 / My role
Full-Stack Developer · Realtime Systems · Product Design
02 / Core technologies
Next.js / Socket.IO / Prisma / PostgreSQL
03 / Engineering focus
Shared round state / Private word reveal

01 / Overview

Give conversation a place to play.

A warm retro multiplayer social deduction game where players join rooms, receive secret words, give clues, vote and try to uncover the imposter.

The problem

A social deduction game depends on shared timing and private information. Players need to join the same room, understand the round and see their own secret without revealing it to everyone else. Imposter turns those needs into a playful browser experience.

What I built

I built the full-stack game and realtime systems, designing the room, lobby and secret-word interactions around conversation and deduction.

02 / Product & experience

One room. Different information.

Players host or join a room, receive secret roles and words, exchange clues and vote to uncover the imposter. The broadcast-station lobby makes room codes, players and host controls visible, while a handheld-inspired screen gives private information its own interaction.

One room / Two information boundaries
Shared with the room

Everyone plays.
Not everyone knows.

Room code · Players · Clues · Voting

Inspect the private boundary

Only the player sees it.

The secret role and word belong in a private reveal. The room continues to share the round state.

Interaction study / No session data
01

Host and join

Enter a nickname, create a shared room or join one with its room code.

02

Shared round state

Bring players together through the lobby, clues and voting stages of a realtime party game.

03

Private word reveal

Hold to reveal the secret word through a dedicated interaction before returning to the group.

Imposter broadcast lobby with room code, connection status, players and room controls.
02 / Channel 84 / Lobby

Lobby / A shared room before the first round.

03 / System & engineering

A realtime browser party game.

The application uses Next.js, React and TypeScript with Tailwind CSS. Socket.IO provides the realtime technology, with Prisma and PostgreSQL in the data stack. Zod, Framer Motion and Lucide React support validation, interface motion and utility icons; deployment uses Vercel.

01Application
Next.js 15 / React 19 / TypeScript / Tailwind CSS 4
02Realtime & data
Socket.IO / Prisma / PostgreSQL
03Interface utilities
Zod / Framer Motion / Lucide React
04Delivery
Vercel

04 / Selected screen

A secret in your hands.

The secret-word screen borrows the form of a handheld game. Its hold-to-reveal control makes the private moment explicit, while the waiting message reconnects that moment to the shared round.

Imposter secret-word screen presented in its original handheld game interface.
03 / A secret in your hands
05 / Delivered

A realtime party game that gives shared conversation and private information their own clear interactions.

I built the full-stack game and realtime systems, designing the room, lobby and secret-word interactions around conversation and deduction.

Explore the live project — Imposter. (opens in a new tab)

Imposter. / Next.js / Socket.IO / Prisma / PostgreSQL