https://github.com/suraj-kumar00/chattychan
💬 Solve instant, reliable team communication with a scalable real-time chat app leveraging cloud-native infrastructure for seamless messaging.
https://github.com/suraj-kumar00/chattychan
aws chat-application docker full-stack-chat-application github-actions grafana iac kubernetes prometheus reactjs terraform
Last synced: 10 months ago
JSON representation
💬 Solve instant, reliable team communication with a scalable real-time chat app leveraging cloud-native infrastructure for seamless messaging.
- Host: GitHub
- URL: https://github.com/suraj-kumar00/chattychan
- Owner: Suraj-kumar00
- License: mit
- Created: 2024-12-11T16:37:47.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2025-01-29T10:28:52.000Z (12 months ago)
- Last Synced: 2025-01-29T11:29:27.498Z (12 months ago)
- Topics: aws, chat-application, docker, full-stack-chat-application, github-actions, grafana, iac, kubernetes, prometheus, reactjs, terraform
- Language: JavaScript
- Homepage:
- Size: 1.25 MB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
Awesome Lists containing this project
README
ChattyChan
**ChattyChan a `real-time`, `scalable` chat application** enabling users to send and receive messages instantly using modern full-stack technologies. Implemented **cloud-native DevOps practices** for `seamless deployment`,` CI/CD automation`, and `high availability` with load balancing.
## **Build With** 🛠️
1. **`Frontend:`** React.js (with [**Socket.io**](http://socket.io/) for real-time communication)
2. **`Backend:`** Node.js + Express.js (RESTful API & Socket.io integration)
3. **`Database:`** PostgreSQL (relational structure) + Prisma ORM (type-safe queries)
4. **`Backend-as-a-Service:`** Supabase (real-time database & authentication)
## **Cloud/DevOps Practices** ☁️
1. **`Git`** for version control
2. **`Docker`** for containerized microservices architecture
3. **`GitHub Actions`** CI/CD pipelines for pushing building and pushing the docker images to dockerhub
4. **`Jenkins`** CI/CD pipline for deployment.
5. **`AWS`** Cloud Platform
6. **`Terraform`** (IaC) for provisioning cloud resources on **AWS**
7. **`Kubernetes`** (EKS) for orchestration and auto-scaling
8. **`Prometheus`** + **`Grafana`** (monitoring, alerting, and dashboard visualization)
---
## **Installation on Local Machine**
### **How to run the Frontend**
Navigate to frontend
```bash
cd frontend
```
Install dependencies
```bash
npm install
```
Run the frontend server
```bash
npm run dev
```
> The Frontend is build with Vite so it'll run on [http://localhost:5173](http://localhost:5173)
### **How to run the Backend**
Navigate to backend
```bash
cd backend
```
Install dependencies
```bash
npm install
```
Run the backend server
```bash
npm run dev
```
> The Backend will run on [http://localhost:5001](http://localhost:5001)
---
## **Installation Using Docker** 🐳
**Install the Docker Desktop in your local machine**
> Because we need Docker Engine/Daemon to run the docker containers
After `cloning` the repository, open the terminal in the root directory(which is chattychatn) and run the below command:
```bash
docker compose up --build
```
## **Contributing** 🤝
Open to collaborations! Check out our [Contributing Guidelines](./CONTRIBUTING.MD) to get started.
## **License** 📜
MIT Licensed. See [LICENSE](./LICENSE) for details.
⭐ **Star the Repo!** ⭐
**Love this project?** Show your support by starring the repository it helps the community discover this tool!