A real-time, privacy-focused chat application with integrated AI assistance. No databases, no tracking, just pure conversation.
World-Chat reimagines online communication by combining real-time messaging with intelligent AI assistance in a completely privacy-focused environment. No databases, no user tracking, no data persistenceโjust pure, ephemeral conversation with the power of AI at your fingertips.
Switch between Public AI mode (shared context for the entire room) and Private AI mode (personal assistant) with a single click. Ask questions privately or let the AI contribute to group discussionsโthe choice is yours.
- Zero data persistence - No databases or user tracking
- Ephemeral messaging - Messages exist only in active sessions
- No sign-up required - Jump in with a fun, auto-generated handle
- Public AI Mode: Shared Gemini chat session for the entire room
- Private AI Mode: Personal AI assistant with individual context
- Smart Context: AI remembers conversation history during your session
- Instant Toggle: Switch modes with Alt + / hotkey
- Terminal-inspired UI with smooth animations
- Mobile-optimized with smart keyboard handling
- Rich Content Support: Emoji picker + GIF integration
- Keyboard Shortcuts for power users (F1 for help)
- Real-time Presence indicators and user count
- Lightweight animations optimized for low-end devices
- Dual-layer caching for GIFs and media
- Smart auto-scroll with user scroll detection
- Reduced motion support for accessibility
Fully responsive design with mobile keyboard optimization
Switch between Public and Private AI assistance
Backend
- Node.js + Express
- Socket.IO (real-time messaging)
- Google Gemini AI (2.5-flash model)
- Axios + dotenv
Frontend
- Vanilla JavaScript (ES6 modules)
- DOMPurify + Marked (safe rendering)
- Emoji Mart picker
- Tailwind CSS + Custom animations
Infrastructure
- On-demand deployment (onRender.com)
- Environment-based configuration
- Connection state recovery
- CORS and security headers
| Action | Windows | Mac | Description |
|---|---|---|---|
| Help | F1 |
F1 |
Show/hide shortcuts overlay |
| AI Trigger | Alt + A |
Alt + A |
Toggle "@ai " prefix |
| AI Mode Toggle | Alt + / |
Alt + / |
Switch Public/Private AI mode |
| Emoji Picker | Ctrl + E |
โ + E |
Open emoji picker |
| GIF Picker | Ctrl + G |
โ + G |
Open GIF picker |
| Send Message | Ctrl + Enter |
โ + Enter |
Send current message |
| Focus Input | Ctrl + I |
โ + I |
Focus message input |
| Close Overlays | Esc |
Esc |
Close pickers/help |
- Enter a fun username (auto-generated suggestions available)
- Start typing and press Enter to send messages
- See other users join and leave in real-time
- Type
@aifollowed by your question - Use
Alt + /to toggle between Public and Private modes - Public Mode: AI responses are visible to everyone
- Private Mode: AI responses are only visible to you
- Use
Ctrl/โ + Efor emoji picker - Use
Ctrl/โ + Gfor GIF search - Markdown formatting is supported and safely rendered
- WebRTC P2P History Sharing: Distributed chat history through peer-to-peer gossip protocol
- Voice Messages: Real-time audio messaging
- File Sharing: Ephemeral file transfer
- Custom Themes: User-selectable UI themes
- Room Management: Private rooms and moderation tools
- Each client stores the recent chat history locally.
- When a new client joins, instead of relying on the server, existing peers can "seed" the chat history to them.
- This reduces server load and creates a distributed storage model.
- Requires at least one active seeder client online.
- With low traffic, new users may join and see an empty chat if no peers are available.
- Building WebRTC + sync logic is complex and may be overengineering for now.
- P2P would shine when there are always many users online.
- It allows shared persistence without a database.
- Can reduce dependency on centralized storage while keeping chats alive longer.
We welcome contributions! Here's how to get started:
- Fork the repository
- Create a feature branch:
git checkout -b feature/amazing-feature - Make your changes and test thoroughly
- Commit with clear messages:
git commit -m 'Add amazing feature' - Push to your branch:
git push origin feature/amazing-feature - Open a Pull Request
- Follow existing code style and patterns
- Test on both desktop and mobile devices
- Ensure accessibility compliance
- Update documentation for new features
- Report Issues: GitHub Issues
In an era of data harvesting and privacy concerns, World-Chat offers a refreshing alternative:
- True Privacy: No data persistence means your conversations truly disappear
- AI Integration Done Right: Context-aware assistance without compromising privacy
- Modern UX: Terminal aesthetics meet modern web standards
- Mobile-First: Optimized for touch devices and mobile keyboards
- Developer Friendly: Clean codebase with comprehensive documentation
Ready to experience the future of private, AI-enhanced communication?
Built for privacy-conscious users who want more than just chat.