diff --git a/README.md b/README.md
index f42b72a..536cfa7 100644
--- a/README.md
+++ b/README.md
@@ -1,187 +1,335 @@
-# π» Ephemeral Chat
-**The Gold Standard for Zero-Persistence, Encrypted Communication.**
-
-Ephemeral Chat is a high-security, anonymous messaging platform built for users who demand absolute privacy. No accounts, no logs, and no traces. Messages live only in memory and self-destruct with mathematical precision.
-
-
-
-
-
-
-
-
- Features β’
- Quick Start β’
- Tech Stack β’
- Architecture β’
- Deployment
-
-
----
+## π₯ Demo Video
-## π₯ Experience the Magic
+[](https://youtu.be/gnvoWkvkkho)
-Watch how Ephemeral Chat redefines private communication:
+Watch a quick demo of Ephemeral Chat in action!
+
+---
-[](https://youtu.be/gnvoWkvkkho)
+## πΈ Screenshots
-### πΈ Sneak Peek
+Hereβs a sneak peek at the app interface:
----
+## π CI/CD & Code Quality
-## β‘ Advanced Features
+- **GitHub Actions**: Automated workflows for building, testing, and analyzing code.
+- **CodeQL**: Security analysis for JavaScript/Node.js and Java/Android code.
+- **Gradle Build**: Ensures Android app builds successfully on every push.
-### π Ironclad Privacy
-- **E2EE (AES-GCM)**: Military-grade 256-bit encryption performed entirely in-browser. Keys are stored in the URL fragment (`#`) and never traverse the network.
-- **Snapshot Protection**:
- - **Privacy Blur**: Instant grayscale blur applied to the UI when focus is lost.
- - **iOS Guard**: Automatic black-screen overlay to prevent sensitive snapshots in the App Switcher.
- - **Ghost Watermark**: Dynamic, drifting watermark Layer that rotates and moves to deter AI-based OCR and screenshot reconstruction.
-- **Stealth Password Entry**: Invisible input system for room passwordsβno characters, no dots, zero visual footprint.
+
+
Ephemeral Chat
-### ποΈ Elite Communication
-- **Hybrid Voice Engine**: A state-of-the-art failover system. Starts with **WebRTC P2P** for low latency and auto-scales to **Agora RTM/RTC** if network conditions degrade or participant count increases.
-- **Universal Voice Notes**: Backend FFmpeg pipeline converts recordings to AAC (.m4a) on-the-fly, ensuring flawless playback across iOS, Android, and Desktop.
-- **Targeted Messaging**: Granular control over message recipients within a room, orchestrated via a secure server relay.
+ [](LICENSE)
+ [](https://github.com/cLLeB/ephemeral-chat/issues)
+ [](https://ephemeral-chat-7j66.onrender.com/)
-### π‘οΈ System Integrity
-- **Proof-of-Work CAPTCHA**: Custom `@cap.js/widget` implementation for anti-spam without compromising user anonymity.
-- **Zero-Persistence**: All data resides in volatile memory (RAM). Once the last user departs, the environment is scrubbed.
-- **Micro-interactions**: Animated message delivery and "vanishing" effects powered by optimized CSS transforms.
+
A secure, anonymous, and ephemeral chat application with self-destructing messages. Installable as a Progressive Web App (PWA) for native-like experience.
+
A secure, anonymous, and ephemeral chat application with self-destructing messages. Installable as a Progressive Web App (PWA) for native-like experience. Can also be distributed as a Trusted Web Activity (TWA) for Android via the Play Store.
----
+ [Report Bug](https://github.com/cLLeB/ephemeral-chat/issues) Β· [Request Feature](https://github.com/cLLeB/ephemeral-chat/issues/new?assignees=&labels=enhancement&template=feature_request.md&title=)
+
+
+## β¨ Features
+
+### π¬ Rich Messaging
+- **Real-Time Messaging**: Lightning-fast message delivery using Socket.io
+- **π Voice Calls**: Crystal clear peer-to-peer audio calls using WebRTC
+- **π€ Universal Voice Notes**: Record audio on any device (iOS, Android, Desktop) and play it anywhere.
+ - *Technical Feat*: Server-side conversion to AAC (.m4a) ensures seamless playback on Safari and all modern browsers.
+- **πΈ Image Sharing**: Share images securely with view-once capability
+- **Self-Destructing Messages**: Messages disappear after being read or after a set time
+
+### π Room Management
+- **Instant Room Creation**: Generate unique chat rooms instantly with 6-digit codes
+- **πͺ Knock-to-Join System**: Guests enter a lobby and must be approved by the host
+- **π Host Controls**: Room creators can approve or deny entry to pending guests
+- **π Host Handover**: Automatic ownership transfer if the host leaves
+- **Anonymous Participation**: No accounts or personal information required
+- **Auto-Cleanup**: Rooms automatically close after inactivity
+
+### π‘οΈ Security & Privacy
+- **π Client-Side Encryption (E2EE)**: Messages are encrypted in the browser using AES-GCM. The key is in the URL hash and never reaches the server.
+- **No Message Persistence**: Messages are never stored permanently on the server
+- **π Password Protection**: Optional password protection for rooms
+- **π€ Bot Protection**: Integrated Proof-of-Work CAPTCHA to prevent spam
+- **π‘οΈ Brute Force Protection**: Failed attempt tracking and automatic lockout
+- **β
Input Validation**: XSS prevention and credential sanitization
+
+### π± Progressive Web App (PWA)
+- **Installable**: Add to home screen on any device
+- **Native Feel**: App-like experience with splash screen and theme colors
+- **Offline Capable**: Core shell works offline
## π οΈ Tech Stack
-| Frontend | Backend | DevOps |
-| :--- | :--- | :--- |
-| **React** & **Vite** | **Node.js** & **Express** | **Docker** Ready |
-| **Tailwind CSS** | **Socket.io** | **GitHub Actions** CI/CD |
-| **Lucide Icons** | **FFmpeg** (Processing) | **CodeQL** Analysis |
-| **WebRTC & Agora** | **Redis** (Scaling) | **Render** Hosting |
----
+### Frontend
+- **React**: UI library
+- **Vite**: Build tool and dev server
+- **Tailwind CSS**: Utility-first CSS framework
+- **Socket.io Client**: Real-time communication
+- **WebRTC**: Peer-to-peer audio calls
+- **Lucide React**: Beautiful icons
+
+### Android Distribution
+- **Trusted Web Activity (TWA)**: The project includes an `android/` directory with a Gradle project, allowing the PWA to be packaged and distributed as a native Android app on the Google Play Store.
+
+### Backend
+- **Node.js & Express**: Server runtime and framework
+- **Socket.io**: Real-time event-based communication
+- **FFmpeg**: Audio processing and conversion (with static binaries)
+- **@cap.js**: Proof-of-Work CAPTCHA system
+- **Redis** (Optional): For scaling across multiple instances
+
+### Audio Processing
+- **Universal Compatibility**: Automated conversion of WebM/Ogg (Android/Chrome) to AAC (iOS/Safari).
+- **Smart Copy**: Intelligent detection of AAC inputs to avoid unnecessary re-encoding.
+- **Robust Normalization**: Auto-correction of sample rates and timestamps for glitch-free playback.
+
+### PWA
+- **Vite PWA Plugin**: PWA generation and management
+- **Workbox**: Service worker libraries
## π Quick Start
-### 1. Requirements
-Ensure you have **Node.js (v16+)** and **npm (v8+)** installed.
+### Prerequisites
+- Node.js (v16 or higher)
+- npm (v8 or higher) or yarn
+- (Optional) Redis for production deployments
-### 2. Installation
-```bash
-# Clone the repo
-git clone https://github.com/cLLeB/ephemeral-chat.git
-cd ephemeral-chat
+### Installation
-# Install dependencies for both root and client
-npm install
-cd client && npm install && cd ..
-```
+1. **Clone the repository**
+ ```bash
+ git clone https://github.com/cLLeB/ephemeral-chat.git
+ cd ephemeral-chat
+ ```
-### 3. Configuration
-Copy the template and add your credentials:
-```bash
-cp client/.env.example client/.env
-```
+2. **Install dependencies**
+ ```bash
+ # Install root dependencies
+ npm install
-
-π Click to see Environment Variables Guide
+ # Install client dependencies
+ cd client && npm install && cd ..
+ ```
-| Variable | Description |
-| :--- | :--- |
-| `VITE_AGORA_APP_ID` | Your Agora project ID |
-| `INACTIVITY_TIMEOUT` | Minutes before a room is cleared |
-| `CAP_SECRET` | Secret key for Captcha system |
+3. **Set up environment variables**
+ Copy the existing `.env` file or create one with these settings:
+ ```env
+ # Server Configuration
+ PORT=3001
+ NODE_ENV=development
-
+ # Security Settings (already configured)
+ INACTIVITY_TIMEOUT_MINUTES=10
+ MAX_FAILED_ATTEMPTS=5
+ LOCKOUT_DURATION_MINUTES=10
+ ROOM_CODE_SALT=your-secure-salt-here
+ CAP_SECRET=your-captcha-secret-key
-### 4. Run Locally
-```bash
-npm run dev
-```
-- **Frontend**: [http://localhost:5173](http://localhost:5173)
-- **Backend**: [http://localhost:3001](http://localhost:3001)
+ # Room Settings
+ ROOM_EXPIRY_MINUTES=60
+ INVITE_TOKEN_EXPIRY_MINUTES=25
+ MAX_MESSAGES_PER_MINUTE=30
+ ```
----
+4. **Start the development server**
+ ```bash
+ # Start both client and server concurrently
+ npm run dev
+ ```
-## ποΈ Architecture & Deep Dives
+5. **Access the application**
+ - Frontend: http://localhost:5173 (Vite dev server)
+ - Backend API: http://localhost:3001
-
-π Hybrid Call State Machine
+## π± Progressive Web App (PWA)
-We use a sophisticated failover logic for audio calls:
-1. **P2P Mode**: Uses WebRTC via Google STUN and ExpressTURN.
-2. **Fallback**: Auto-switches to Agora SDK if:
- - Packet loss exceeds 5%.
- - More than 3 participants join.
- - P2P connection fails to establish.
+Your chat application is a fully-featured PWA that can be installed on any device!
-
+### Installation
+1. **Open in browser** and visit the live demo
+2. **Look for install prompt** in your browser's address bar
+3. **Click "Install"** or "Add to Home Screen"
+4. **Launch from home screen** like a native app
-
-π Security & Encryption Deep Dive
+### PWA Features
+- **Offline functionality** - Chat works without internet
+- **Native app feel** - Custom splash screen and theme colors
+- **Auto-updates** - Always runs the latest version
+- **Fast loading** - Cached assets for instant access
-Using **Web Crypto API (AES-GCM 256-bit)**:
-1. **Key Generation**: A cryptographically strong pseudo-random key is generated on the client.
-2. **Key Storage**: The key is stored in `window.location.hash`. Fragment identifiers are client-side only and are **never** included in HTTP requests.
-3. **Encryption**: Every message is encrypted with a unique Initialization Vector (IV).
-4. **Targeting**: Private messages are encrypted and tagged with specific recipient IDs for the server to relay exclusively to the intended sockets.
+## Documentation
-
+### User Documentation
+- [User Guide](docs/USER_GUIDE.md) - Complete guide for end users
-
-π± Multi-Platform Architecture
+## π€ Contributing
-- **PWA**: Fully offline-capable service workers using Workbox.
-- **TWA (Android)**: Wrapped via Trusted Web Activity for Google Play Store distribution, utilizing Digital Asset Links for seamless verification.
-- **Microsoft Store**: Packaged PWA optimized for Windows 10/11 system integration.
+Contributions are welcome! Here's how you can help:
-
+1. **Fork the repository**
+2. **Create a feature branch**: `git checkout -b feature/amazing-feature`
+3. **Make your changes** and test them thoroughly
+4. **Commit your changes**: `git commit -m 'Add amazing feature'`
+5. **Push to the branch**: `git push origin feature/amazing-feature`
+6. **Open a Pull Request**
-
-π ICE Server Configuration
+See our [Contributing Guidelines](https://github.com/cLLeB/ephemeral-chat/issues) for more details.
-```javascript
-[
- { urls: "stun:stun.l.google.com:19302" },
- { urls: "turn:free.expressturn.com:3478?transport=udp", username: "...", credential: "..." },
- { urls: "turn:relay.metered.ca:80", username: "...", credential: "..." }
-]
-```
+## π License
-
+Distributed under the Apache License 2.0. See [LICENSE](LICENSE) and [NOTICE](NOTICE) for more information.
+
+## π Contact
+
+- **Project Link**: [https://github.com/cLLeB/ephemeral-chat](https://github.com/cLLeB/ephemeral-chat)
+- **Live Demo**: [https://ephemeral-chat-7j66.onrender.com/](https://ephemeral-chat-7j66.onrender.com/)
+- **Email**: kyereboatengcaleb@gmail.com
+
+## π Acknowledgments
+
+- [Socket.IO](https://socket.io/) for real-time communication
+- [React](https://reactjs.org/) for the amazing UI framework
+- [Vite](https://vitejs.dev/) for fast development experience
+- [Tailwind CSS](https://tailwindcss.com/) for utility-first CSS
+- [Render](https://render.com/) for hosting
+- [Progressive Web Apps](https://developers.google.com/web/progressive-web-apps) for native-like web experience
---
## ποΈ Project Structure
-```text
+```
ephemeral-chat/
-βββ android/ # Android TWA project (Play Store)
-βββ client/ # React frontend (Vite + PWA)
-β βββ src/ # React components, hooks, services
-β βββ public/ # PWA manifest and icons
-βββ server/ # Express + Socket.IO backend
-β βββ auth-utils.js # Security & Validation
-β βββ rooms.js # Room management logic
-βββ docs/ # Detailed user and dev guides
+βββ android/ # Android TWA project (wraps the PWA for Play Store distribution)
+β βββ app/ # Android app module
+β βββ build.gradle # Gradle build files
+β βββ gradlew, gradlew.bat # Gradle wrapper scripts
+β βββ ... # Other Android/Gradle files
+βββ client/ # React frontend (Vite + PWA)
+β βββ public/ # PWA assets & manifest
+β β βββ manifest.json # Web app manifest
+β β βββ sw.js # Service worker
+β β βββ *.png # PWA icons
+β βββ src/ # React source code
+β β βββ components/ # Reusable UI components
+β β βββ hooks/ # Custom React hooks
+β β βββ services/ # API integrations
+β β βββ utils/ # Helper functions
+β βββ vite.config.js # Vite configuration with PWA
+β βββ package.json
+β
+βββ server/ # Express + Socket.IO backend
+β βββ auth-utils.js # Authentication utilities
+β βββ index.js # Server entry point
+β βββ rooms.js # Room management
+β βββ security.js # Security middleware
+β βββ utils.js # Utility functions
+β
+βββ docs/ # Documentation
+β βββ USER_GUIDE.md # User guide
+β
+βββ .env # Environment variables
+βββ package.json # Root dependencies
+βββ README.md
```
----
+## π± Android TWA Distribution
+
+This project can be distributed as a native Android app using Trusted Web Activity (TWA). The `android/` directory contains a Gradle project that wraps the PWA, allowing you to publish the app on the Google Play Store for a seamless, native-like experience.
-## π€ Contributing & License
+### Building the Android App
-We love contributions! Please feel free to open an issue or submit a pull request.
+```bash
+cd android
+./gradlew assembleDebug # or assembleRelease for production
+```
+The output APK will be in `android/app/build/outputs/apk/`.
+
+You can customize the TWA settings and assets in the `android/` directory as needed.
+
+## βοΈ Configuration
+
+### Environment Variables
+The application uses the following environment variables (see `.env` file):
+
+```env
+# Server
+PORT=3001
+NODE_ENV=development
+
+# Security (REQUIRED)
+INACTIVITY_TIMEOUT_MINUTES=10
+MAX_FAILED_ATTEMPTS=5
+LOCKOUT_DURATION_MINUTES=10
+ROOM_CODE_SALT=your-secure-salt-here
+
+# Room Settings
+ROOM_EXPIRY_MINUTES=60
+INVITE_TOKEN_EXPIRY_MINUTES=5
+MAX_MESSAGES_PER_MINUTE=30
-**License**: Distributed under the **Apache License 2.0**. See `LICENSE` and `NOTICE` for details.
+# Redis (optional)
+# Redis (optional)
+# REDIS_URL=redis://localhost:6379
+
+### Client Environment Variables
+Create a `.env` file in the `client` directory for frontend configurations:
+```env
+# WebRTC ICE Servers (Optional - for custom TURN/STUN servers)
+VITE_ICE_SERVERS=[{"urls":"stun:stun.l.google.com:19302"}]
+```
+```
+
+### Available Scripts
+- `npm run dev`: Start development servers (client + server)
+- `npm run server`: Start backend server only
+- `npm run client`: Start frontend client only
+- `npm run build`: Build frontend for production
+- `npm start`: Start production server
+
+## π§ Development
+
+### Frontend Development
+The client is built with React and Vite:
+
+```bash
+cd client
+npm run dev # Starts on http://localhost:5173
+```
+
+### Backend Development
+The server uses Node.js with Express and Socket.IO:
+
+```bash
+npm run server # Starts on http://localhost:3001
+```
+
+### API Endpoints
+- `GET /` - Health check
+- `POST /api/rooms` - Create room
+- `GET /api/rooms/:code` - Get room info
+- WebSocket events: `joinRoom`, `sendMessage`, `leaveRoom`
+
+## π Deployment
+
+The application is currently deployed on **Render**:
+
+- **Frontend**: Static site deployment
+- **Backend**: Web service
+- **URL**: https://ephemeral-chat-7j66.onrender.com/
+
+### Deployment Configuration
+The deployment uses the `render.yaml` configuration for automatic builds and deployments.
---
-
+
+*Built with β€οΈ for privacy-focused communication*