Skip to content
TheAbhiPatel
All projects
Type
Built for fun
Year
2026
Area
Full Stack
Stack
5 tools

The story

Why it exists

Setu is a real-time chat application built with Next.js, Supabase and TypeScript. Supabase provides auth, realtime, storage and the PostgreSQL database, and the repo also contains a Tauri desktop build and an Expo mobile app. Production runs on Docker behind Traefik with a self-hosted Supabase.

A chat application with private and group messaging features, built using Next.js, TypeScript, and Supabase for real-time functionality.

What it does

The features that matter

  • Real-time private chats and group chats with member roles
  • Message reactions, forwarding, pinned chats and message reporting
  • File uploads and shared files per conversation
  • Email sign-up with verification, Google sign-in and two-factor login (TOTP)
  • Push notifications and active session management
  • Admin area with analytics, reports, audit and developer API keys and webhooks

Under the hood

How it works

  1. Step 1

    Next.js 14 frontend with Tailwind CSS and Radix UI

  2. Step 2

    Supabase handles auth, realtime messaging, file storage and PostgreSQL

  3. Step 3

    Desktop app built with Tauri; mobile app built with Expo in the mobile folder

  4. Step 4

    Deployed with Docker and Traefik with Let's Encrypt SSL and self-hosted Supabase

A look at it

As it runs today

setu.theabhipatel.com
Setu - A Chat Application screenshot

Built with

  • Next.js
  • Node.js
  • Express.js
  • MongoDB
  • TypeScript

Zustand for state, Sentry for error tracking, web-push for notifications, MCP server support via mcp-handler.

Ask ABI about it

Up next

Keep exploring