Files
rat-chat/README.md
2025-12-13 21:51:09 +11:00

1.7 KiB

Rat Chat 🐀

The Pure TypeScript Chat Application

Rat Chat is a modern, real-time messaging application built on the PURE STACK concept: using TypeScript across the entire codebase to ensure type safety, consistency, and developer velocity from the database to the DOM.

🚀 The PURE STACK Architecture

This project strictly adheres to a unified TypeScript ecosystem:

  • Backend: Bun + ElysiaJS
    • High-performance runtime and framework.
    • End-to-end type safety with automatic OpenAPI generation.
    • Native WebSocket support.
  • Frontend: Vite + React + TypeScript
    • Fast HMR (Hot Module Replacement).
    • Strict typing for components and state.
    • Shared interfaces with the backend.

🛠️ Getting Started

Prerequisites

  • Bun (Runtime for both backend and frontend tooling)

Installation

  1. Clone the repository

    git clone https://gitea.ratland.dev/rat-chat.git
    cd rat-chat
    
  2. Setup Backend

    cd backend/app
    bun install
    bun dev
    

    Server runs on http://localhost:8080

  3. Setup Frontend

    cd frontend/app
    bun install
    bun dev
    

    Client runs on http://localhost:5173

📦 Project Structure

rat-chat/
├── backend/app/        # ElysiaJS Server (API & WebSockets)
├── frontend/app/       # React Client
└── AGENTS.md           # Instructions for AI Agents

🤝 Contributing

We welcome contributions that stick to the PURE STACK philosophy. Keep it typed, keep it fast.