T3 Chat Clone: A Fully-Featured AI Chat Platform

A comprehensive AI chat application built for the T3 ChatCloneathon with 70+ model support, 51 themes, and advanced features like file uploads, code conversion, and chat indexing.

Chat ApplicationAILLMsHackathon
Screenshot of the T3 Chat Clone application showing a modern chat interface with multiple AI models, file attachments, and a beautiful glassmorphism theme
Click to enlarge

Tech Stack

  • Next.js 14 (App Router)
  • React 19
  • TypeScript
  • Vercel AI SDK
  • Supabase (Auth, Database, Storage)
  • Tailwind CSS 4
  • Math.js

Timeline

2 Weeks (June 7 2025 - June 18 2025)

My Role

Solo Full-Stack Developer

Project Overview

Welcome to T3 Clone -- a feature-rich AI chat platform built for power users, developers, and keyboard warriors. It's more than just another chatbot. With deep customization and powerful tooling, T3 Clone is your personalized AI workspace.

Key Features at a Glance

  • Access over 70 AI models from 7 different providers
  • Secure authentication and chat history sync via Supabase
  • Choose from 51 handcrafted UI themes
  • Chat autocomplete lets you start typing anything and have the AI complete your thoughts, answers, or code
  • Built-in tools like Wikipedia search, a calculator, and code converters
  • Advanced features: file uploads, syntax highlighting for 259 languages, and full keyboard shortcut support
  • Customize how the AI behaves and responds, or pick from 6 prebuilt personas
  • Convert code between 295+ programming languages instantly
  • Stay organized with AI-powered chat summaries for effortless navigation through long conversations

Whether you're writing code, exploring new topics, or just want a smarter way to chat, T3 Clone gives you the control, speed, and flexibility to make it your own.

Project Overview

T3 Chat Clone is a sophisticated AI chat platform that stands out for its extensive feature set and customization options. It's built on modern web technologies and offers a unique combination of power-user features and user-friendly design. The platform supports multiple AI providers, offers extensive personalization options, and includes advanced features like code conversion, chat indexing, and attachment handling.

This project was built as an entry for the T3 ChatCloneathon and demonstrates what happens when you take "build a cool AI chat app" and run with it to the extreme. It features multi-provider LLM support via Vercel AI SDK, full Supabase Auth with row-level security and synced history, and one-click Vercel deployment with BYOK support.

Favorite Parts of Implementation

  1. Advanced Personalization System: The implementation of a flexible system prompt builder that allows users to customize the AI's personality, communication style, and context awareness. This includes a detailed, complex system prompt designed to elicit high-quality responses, even from lower quality models.
  2. Theme System: The implementation of 51 hand-crafted themes with a focus on both aesthetics and usability, including glassmorphism effects and custom color schemes.
  3. Comprehensive Keyboard Shortcuts: The implementation of a robust keyboard shortcut system that significantly enhances productivity and accessibility for power users.

Biggest Challenges

  1. State Management: Managing complex state across multiple features while maintaining performance and user experience, especially with real-time updates and file handling.
  2. Real-time Sync: Implementing reliable real-time synchronization of chat history and user settings across devices, handling potential conflicts and ensuring data consistency.
  3. Scope Creep: Managing the rapid growth of features (70+ AI models, 51 themes, file uploads, tools integration, chat indexing) while maintaining a high standard of quality and performance.
  4. Multi-Provider LLM Integration: Requiring careful abstraction, error handling, and performance optimization across diverse AI APIs.
  5. Sophisticated Design System: Creating a theme system with 51 variations, glassmorphism, and consistent styling, which demanded a highly flexible and scalable CSS architecture.

Instructions to Try Out

Quick Start (Hosted Version)

  1. Visit the hosted demo at https://t3clone.monster0506.dev
  2. Sign up for an account.
  3. Start chatting with the AI!

Local Development Setup

# Clone the repository
git clone https://github.com/monster0506/t3chatclone.git
cd t3chatclone

# Install dependencies
npm install

# Set up environment variables
# Create .env.local with your Supabase and AI provider keys
# Required: NEXT_PUBLIC_SUPABASE_URL and NEXT_PUBLIC_SUPABASE_ANON_KEY
# Optional: Add API keys for AI providers you want to use

# Start the development server
npm run dev

Key Features to Try

  • Use Ctrl+? to see available keyboard shortcuts for power-user navigation.
  • Explore different AI models from the model selector dropdown.
  • Upload attachments (PDFs, images) and ask the AI to analyze their content.
  • Customize the AI's personality and persistent instructions in the settings panel.
  • Experiment with the code conversion feature, translating code between various programming languages.

Key Features

  • Multi-provider LLM support with 70+ models across 7 providers (OpenAI, Anthropic, Google, Mistral, DeepSeek, Grok, Cerebras)
  • Full Supabase authentication with row-level security and cross-device sync
  • 51 hand-crafted UI themes with glassmorphism effects and custom color schemes
  • File attachment support for PDFs and images with AI analysis capabilities
  • Advanced calculator tool with matrix operations and trigonometric functions
  • Wikipedia integration with clean article previews and search functionality
  • Syntax highlighting for 259+ programming languages
  • Comprehensive keyboard shortcuts for power users (Ctrl+? for cheat sheet)
  • Chat indexing with AI-generated summaries and jump points
  • Chat branching and cloning functionality
  • Personalization system with custom names, professions, AI personalities, and 6 prebuilt personas
  • Persistent instructions and system prompts (3000 character limit)
  • Code conversion between 295+ programming languages instantly
  • Chat sharing with public/private toggle
  • Chat autocomplete with AI-powered suggestions to complete thoughts, answers, or code
  • Responsive design optimized for all devices
  • Real-time chat updates and message streaming
  • Advanced chat organization with tags, archiving, and pinning
  • Export functionality in multiple formats
  • One-click Vercel deployment with environment variable configuration

Challenges & Solutions

The biggest challenges involved managing the extensive scope creep while ensuring optimal performance and user experience across a vast feature set. Specifically, complex state management for features like real-time chat syncing and file uploads, along with reliable real-time synchronization of chat history and user settings across devices, proved demanding. Integrating the Vercel AI SDK with 70+ models from multiple providers required meticulous abstraction and error handling. Designing a robust database schema to support intricate relationships and maintain performance was crucial. Furthermore, implementing a sophisticated theme system capable of handling 51 distinct UI themes with glassmorphism effects, gradients, and consistent styling posed a significant design and technical challenge. Ensuring comprehensive keyboard shortcuts were both functional and accessible, and maintaining overall application performance despite its complexity, required continuous optimization and careful balancing.

What I Learned

This project taught me the importance of building scalable architecture from the start. The Vercel AI SDK integration showed how powerful abstraction layers can be when working with multiple AI providers. I learned advanced React patterns for managing complex state, especially with real-time features and file handling. The theme system demonstrated how to build a flexible design system that can accommodate dozens of variations while maintaining consistency. Working with Supabase's row-level security taught me important lessons about data security and user privacy. The keyboard shortcuts implementation reinforced the value of accessibility and power-user features. Managing a large codebase with many features taught me the importance of good documentation, component organization, and code reusability. The deployment process with Vercel and environment variable management showed me best practices for production applications. Most importantly, I learned that while feature creep can be challenging, it's also an opportunity to create something truly unique and valuable for users.