Skip to content

Latest commit

 

History

History
44 lines (34 loc) · 1.97 KB

File metadata and controls

44 lines (34 loc) · 1.97 KB

Messenger Logo

Messenger

The project is a messenger application allowing users to exchange messages in real-time. Within the app, users can create private dialogs, group chats, and channels for mass broadcasting. Additionally, the application supports sending photos in chats, enabling users to share images.

Run Build and Test

To run docker container

- `docker run --name "messenger-pgsql-db" -e POSTGRES_USER=postgres -e POSTGRES_PASSWORD=postgres -p 5432:5432 -d postgres:latest`

How to build project

Frontend

  • Install NVM for Windows
  • Validate NVM installed correctly (PowerShell as Administrator): nvm --version
  • Install NodeJS (PowerShell as Administrator): nvm install 18.14.0
  • Use NodeJS (PowerShell as Administrator): nvm use 18.14.0
  • Check NodeJS installed properly: node -v
  • Check NPM installed properly (should be 9.4.1): npm -v
  • Install NPM v9.4.1 if necessary: npm install -g npm@9.4.1
  • Install TypeScript globally: npm install -g typescript@4.9.5
  • Validate TS files: cd Messenger.Client && tsc -p tsconfig.json
  • Restore packages: npm ci
  • Set execution policy: Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser
  • Run project: npm start

Backend

  • Install .NET 6.0 SDK
  • Run dotnet build
  • Run database in Docker: docker run --name "messenger-pgsql-db" -e POSTGRES_USER=postgres -e POSTGRES_PASSWORD=postgres -p 5432:5432 -d postgres:latest
  • Install Azurite: npm install -g azurite
  • Run Azurite: azurite --silent --location c:\azurite --debug c:\azurite\debug.log