https://github.com/anganda/messengerapp
https://github.com/anganda/messengerapp
Last synced: over 1 year ago
JSON representation
- Host: GitHub
- URL: https://github.com/anganda/messengerapp
- Owner: AngAnda
- Created: 2025-01-15T19:19:07.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2025-02-01T15:45:40.000Z (over 1 year ago)
- Last Synced: 2025-02-01T16:23:23.498Z (over 1 year ago)
- Language: TypeScript
- Size: 743 KB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# MessengerApp Project
This guide will walk you through the necessary steps to configure and run your project, which includes Docker Compose to create containers for MySQL, NestJS, and Nginx, as well as Swagger for API documentation. The setup also includes end-to-end (E2E), integration, and unit tests.
## Prerequisites
Make sure you have the following installed on your system:
- [Docker](https://www.docker.com/get-started)
- [Docker Compose](https://docs.docker.com/compose/install/)
- [Node.js](https://nodejs.org/en/download/)
- [Angular CLI](https://angular.io/cli)
## Setup Steps
### 1. Clone the Project from GitHub
Open a terminal and clone your project:
```bash
git clone https://github.com/username/your-project.git
cd your-project
```
### 2. Set Up Docker Compose for the Database
The project uses Docker to create a container for the database, api and gateway. To set up these containers follow the next step.
```bash
docker-compose up -d
```
### 3. Set Up Angular client
Start the Angular development server with the following command:
```bash
cd frontend/frontend
ng serve -o
```
## MessengerApi explained



## Messenger app tech stack explained

## Database Schema
The database schema for the application is defined as follows:
Users Table: Stores information about the users (username, email, password, etc.)
Conversations Table: Stores the conversation metadata (title.)
Tag: Stores the name of each tag
UserConversation: stores the association of conversation's and student id's
Messages Table: Contains the messages exchanged between users (message content, sender_id, receiver_id, timestamp)
Each table is linked through foreign keys to establish relationships between the different entities, ensuring data integrity

.
## Messenger app presentation






