Flash Chat is a secure and anonymous chat application offering a revolutionary platform for communication. With a focus on user privacy, Flash Chat ensures that no data is stored once the session is closed, providing users with peace of mind during their conversations.
- Secure and Anonymous Communication: Users can choose to log in with a username or anonymously, with all data automatically deleted upon session closure.
- Real-time Messaging: Enjoy seamless real-time messaging with the help of Socket.IO, ensuring instant communication.
- Internationalization (i18n): Fully translated into English and Spanish. Change languages instantly from the settings menu or the login screen.
- Voice Messaging: Record and send voice messages easily. Features a WhatsApp-style recording interface (Timer, Cancel) and a custom audio player with progress bar.
- Image Sharing: Share images with optional captions directly in the chat. Features include image preview before sending and a lightbox mode for viewing full-size images.
- Enhanced Room Management: Create private rooms, copy invitation links or Room IDs with a single click, and view a real-time list of connected users via the new Side Menu.
- Smart Notifications: Never miss a message. The app features a dual-notification system: a soft sound while you are active in the chat, and a distinct alert plus a System Notification when the app is in the background.
- Performance & Cleanup: Automatic message cleanup (keeping the last 100 messages) ensures the app remains fast and lightweight during long sessions.
- Message Control: Users can delete their own messages, providing better control over the conversation.
- Modern UI/UX: A completely responsive design that works perfectly on mobile and desktop. Features a centered desktop layout, glassmorphism effects, standard "Flash Chat" branding, and Light/Dark theme toggles.
- Usage Recommendations: Built-in guide with tips for secure and efficient usage.
- Customizable Alerts: Integration with SweetAlert2 enhances user experience with customizable alerts and notifications.
- Easy Setup: The project is divided into frontend and server directories, making setup hassle-free. Simply install dependencies with npm and run the project in development mode.
- Security & Privacy (New):
- No-Log Policy: The server does NOT store any logs of user activity, connections, or message metadata.
- Transparent Encryption: All messages are encrypted in the browser using the Room ID as a key. The server only sees encrypted data.
- Volatile History: A temporary history of text messages is kept in the server's RAM to help users catch up if they reload. This history is encrypted and is automatically deleted when the room becomes empty.
- Auto-Reconnection: Smart logic to restore your session if your mobile device momentarily disconnects.
- React.js with Vite for frontend development
- Socket.IO for real-time communication
- i18next & react-i18next for Internationalization
- SweetAlert2 for enhanced user alerts
- Node.js and Express for backend development
- Tailwind CSS for styling
- Helmet for backend security headers
- Heroicons for a modern and consistent icon set
- date-fns for time formatting
- Platform: Hosted on Render (Node.js & Socket.io).
- Status: Active, with automatic deployment from GitHub.
- Technical Address:
chat-socketio-n9to.onrender.com(Origin).
- Domain:
flashchat.website(Registered via IONOS). - Validation: ICANN identity verification completed.
- Privacy: Whois Privacy protection enabled.
- A Record: Root (
@) points to Render IP216.24.57.1. - CNAME:
wwwpoints to the Render technical URL.
- Proxy: Enabled (Orange Cloud) to mask server IP and provide DDoS protection.
- SSL/TLS: Set to Full encryption (User ↔ Cloudflare ↔ Render).
- Nameservers: Delegated to Cloudflare.
- WebSockets: Enabled on Cloudflare network to ensure stable socket connections.
- HTTPS: "Always Use HTTPS" enforced for all traffic.
- Main URL: https://flashchat.website
- Security: Bank-grade SSL & DDoS Protection active.
- Privacy: Server IP hidden behind Cloudflare proxy.
To begin using Flash Chat, ensure you have Bun installed on your system. Navigate to the project's root directory and run bun install to install dependencies for both backend and frontend. Then, start the project in development mode by running bun run dev.
If you prefer to run the frontend separately, you can navigate to the frontend folder and run bun run dev.
To run the backend test suite (Unit & Integration tests):
bun testThe tests cover:
- Unit Tests: Rate Limiter logic.
- Integration Tests: Socket.IO connection, login, messaging, broadcasting, and rate limiting enforcement.
Experience Flash Chat firsthand by visiting our live application at https://flashchat.website. We value your feedback and invite you to explore the application. Don't forget to star our GitHub repository to show your support!
For developers interested in contributing or understanding the project structure:
- Architecture Overview: Detailed explanation of the frontend/backend split and data flow.
- Contributing Guidelines: Branching strategy, code standards, and PR process.
- Changelog: History of changes and versions.
bun install: Install dependencies.bun run dev: Start dev server (backend + frontend).bun run lint: Run code linting.bun test: Run tests.
We extend our sincere gratitude to all users for choosing Flash Chat. Your continued support drives us to innovate and improve. Let's chat securely and anonymously together!



