CASE STUDY · GAMING & WEB APP

Book Your Migget

A team finder web app for the Teeworlds gaming community. Find runs, join teams, and coordinate across KoG, DDNet, and FNG networks.

THE BRIEF

The brief.

Teeworlds is a retro multiplayer game with a dedicated competitive community. Players needed a way to post runs on maps, set requirements (minimum points, team size, network), and let others request to join. No existing tool did this. The community was coordinating through Discord messages and forum posts. The client wanted a dedicated web app that handled team formation, scheduling, and player verification.

THE BUILD

How we built it.

We built a full-stack application with Next.js 16 using the App Router and React Server Components. The backend runs on serverless API routes with Prisma ORM connecting to a Supabase PostgreSQL database. Authentication uses signed JWT session cookies with bcrypt password hashing. The frontend features 3D floating Teeworlds skins rendered with React Three Fiber, and integrates with the teedata.net API for live skin rendering and the KoG map database covering 580+ maps with difficulty ratings and point requirements. Security includes CSRF protection, rate-limited login attempts, Content Security Policy headers, and httpOnly cookies.

Tech

Next.js 16, Supabase, Prisma, Three.js

Maps

580+ indexed

Auth

JWT + bcrypt + CSRF

THE RESULT

What was delivered.

A production web app where players can post upcoming runs with map, network, team size, point requirements, and schedule. Other players can browse and request to join teams that match their skill level. Integrated with the KoG map database and teedata.net for real skin rendering. Secured with JWT authentication, rate limiting, and row-level security on the database. SEO and AI visibility built in from day one with schema markup, sitemap, and llms.txt targeting zero-competition keywords like 'teeworlds team finder'.

Want results like this for your business?

Get a free audit and find out what we can build together.

[email protected]