/Folks

This application provides messaging, audio and video calls, but only for family and friends.

Primary LanguageC#

Folks

Channels Service CI (Dev) Identity Service CI (Dev) Api Gateway CI (Dev) Mobile Client CI (Dev)

Built with

Project structure

File / Folder Description
ApiGateways Contains API Gateway applicatons source code
Common Contains shared class libraries source code for backend applications
Frontend Contains frontend applications source code (for example mobile, web and etc.)
Services Contains backend microservices source code
docker-compose.yml
docker-compose.everride.yml
Contains instructions for managing and deploying docker containers
Makefile Contains commands for the application deployment (make deployment simple)
.env.template Contains template for creating .env file

Getting Started

This is the short guide for developers on how to deploy the application locally.

Backend services deployment

To deploy the backend locally you have to install such dependencies as: Docker and Makefile.

Mobile application deployment

To deploy the mobile application you can use cloud (EAS) or local solution (it's required to install XCode or Android Studio).

Important

Carry out instructions bellow from folder Folks.MobileClient

  • If you have chosen locally application deployment, follow this guide
  • If you have chosen application deployment using (EAS) follow steps below
    • Install EAS CLI using command npm install -g eas-cli
    • Contact the owner to add your expo account to the existing expo project
    • Create eas.json using eas.template.json
    • Create .env using .env.template and set environment variables depends on your deployed backend services
    • Follow steps 4 or 5 from the guide
    • Execute command npm run start

Migrations

Add migrations - Identity Service

dotnet ef migrations add MigrationName --project Folks.IdentityService.Database.Migrations --startup-project Folks.IdentityService.Api -c PersistedGrantDbContext -o PersistedGrantDb
dotnet ef migrations add MigrationName --project Folks.IdentityService.Database.Migrations --startup-project Folks.IdentityService.Api -c ConfigurationDbContext -o ConfigurationDb
dotnet ef migrations add MigrationName --project Folks.IdentityService.Database.Migrations --startup-project Folks.IdentityService.Api -c IdentityServiceDbContext -o IdentityServiceDb