bluewave-chat
- Stars
- 8
- Language
- Java
- Updated
BlueWave Chat
A professional-grade, real-time chat application with file sharing, end-to-end encryption, and a modern electric blue UI. Built with JavaFX (frontend) and Spring Boot (backend).
Features
- Real-time messaging (group & private)
- File sharing (drag & drop)
- End-to-end encryption (AES-256, RSA handshake)
- Voice messages & live voice chat (WebRTC)
- Screen sharing
- Emoji picker & rich text formatting
- Typing indicators & read receipts
- User authentication & profile management
- Message history (SQLite)
- Push notifications & sound alerts
- Dark/Light & electric blue theme
- Modern Material Design 3 UI
- Accessibility & keyboard navigation
Tech Stack
- Frontend: JavaFX, FXML, MaterialFX, ControlsFX, RichTextFX
- Backend: Spring Boot, WebSocket, JPA, SQLite, Bouncy Castle, Kurento (WebRTC)
- Build: Maven (multi-module)
Project Structure
BlueWaveChat/
backend/ # Spring Boot backend
frontend/ # JavaFX frontend
Setup Instructions
Prerequisites
- Java 17+
- Maven 3.8+
Build All Modules
cd BlueWaveChat
mvn clean install
Run Backend
cd backend
mvn spring-boot:run
Run Frontend
cd frontend
mvn javafx:run
Sample Data
- Sample SQLite DB and test files will be provided in
/sample-data.
Sample Users
| Username | Password |
|---|---|
| alice | password123 |
| bob | password123 |
Contribution Guidelines
- Fork the repo and create feature branches
- Use clear commit messages
- Follow the code style and architecture
- Submit pull requests for review
License
BlueWave Chat — Modern, secure, and beautiful desktop chat for everyone.