|
| 1 | +# Realtime Chat App (React Native + Spring Boot) |
| 2 | + |
| 3 | +A mobile full-stack realtime chat application built with **React Native + Expo** and **Java Spring Boot**. |
| 4 | + |
| 5 | +It supports: |
| 6 | +- Instant messaging via WebSockets (STOMP Protocol) |
| 7 | +- Video calls powered by WebRTC |
| 8 | +- Cloud storage for images with Azure Blob Storage |
| 9 | +- CI/CD pipeline using GitHub Actions and Render deployment |
| 10 | +- Neon PostgreSQL database |
| 11 | + |
| 12 | +> **Note:** This project is currently in beta – some features may still be unstable or in active development. |
| 13 | +
|
| 14 | +## Tech Highlights |
| 15 | + |
| 16 | +**Frontend (React Native + Expo)** |
| 17 | +- Realtime chat UI with instant message updates |
| 18 | +- User presence (online/offline/last seen) |
| 19 | +- WebRTC for video calls |
| 20 | +- Image uploads handled via Azure Blob Storage to reduce Neon db load |
| 21 | +- Handles live WebSocket/STOMP connections with reconnection supported |
| 22 | + |
| 23 | +**Backend (Java Spring Boot)** |
| 24 | +- REST API for authentication, user management, and message storage |
| 25 | +- Realtime messaging using WebSocket with STOMP over SockJS |
| 26 | +- Video call signaling for WebRTC sessions |
| 27 | +- Image upload integrated with Azure Blob Storage |
| 28 | +- Database: PostgreSQL (Neon) on production |
| 29 | +- CI/CD supporting Render deployment |
| 30 | + |
| 31 | +## Features |
| 32 | +- Realtime one-on-one chat using WebSockets |
| 33 | +- Video call functionality with WebRTC |
| 34 | +- Profile picture uploads |
| 35 | +- Authentication and user management |
| 36 | +- CI/CD pipeline for automated deployment |
| 37 | + |
| 38 | +## Planned Features |
| 39 | +- AI message enhancements |
| 40 | +- Message reactions and replies |
| 41 | +- End-to-end encryption |
| 42 | +- Sending images via messages |
| 43 | + |
| 44 | +## Getting Started |
| 45 | + |
| 46 | +Coming soon... as well as preview of the project |
0 commit comments