pure stack
This commit is contained in:
60
README.md
60
README.md
@@ -1,2 +1,60 @@
|
|||||||
# rat-chat
|
# 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](https://bun.sh) + [ElysiaJS](https://elysiajs.com)
|
||||||
|
- High-performance runtime and framework.
|
||||||
|
- End-to-end type safety with automatic OpenAPI generation.
|
||||||
|
- Native WebSocket support.
|
||||||
|
- **Frontend**: [Vite](https://vitejs.dev) + [React](https://react.dev) + [TypeScript](https://www.typescriptlang.org)
|
||||||
|
- Fast HMR (Hot Module Replacement).
|
||||||
|
- Strict typing for components and state.
|
||||||
|
- Shared interfaces with the backend.
|
||||||
|
|
||||||
|
## 🛠️ Getting Started
|
||||||
|
|
||||||
|
### Prerequisites
|
||||||
|
- [Bun](https://bun.sh) (Runtime for both backend and frontend tooling)
|
||||||
|
|
||||||
|
### Installation
|
||||||
|
|
||||||
|
1. **Clone the repository**
|
||||||
|
```bash
|
||||||
|
git clone https://gitea.ratland.dev/rat-chat.git
|
||||||
|
cd rat-chat
|
||||||
|
```
|
||||||
|
|
||||||
|
2. **Setup Backend**
|
||||||
|
```bash
|
||||||
|
cd backend/app
|
||||||
|
bun install
|
||||||
|
bun dev
|
||||||
|
```
|
||||||
|
*Server runs on `http://localhost:8080`*
|
||||||
|
|
||||||
|
3. **Setup Frontend**
|
||||||
|
```bash
|
||||||
|
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.
|
||||||
|
|||||||
Reference in New Issue
Block a user