Skip to content

samakovuluk/upsb-main

Repository files navigation

      

Microfrontend Application for Hackaton DEV-HACK

This is the main core layer for our microfrontend application. Project consist of three microfrontends: Wallet, Credit, Deposit. And all application is built by the library react.

This architecture helps efficiently deploy, develop, and scale individual parts of the application backend. A microfrontend is that the team can independently develop, test, and deploy as a whole. All the microservices are hosting separately and they doesn't have any depencies each other. And core layer application is composes and combine all microfrontends by the rendering their main.js script with lazy load way.

Package Description Demo Status
🏦 UPSB Main Main Core layer react application upsb.xyz CI/CD codecov
💵 UPSB Wallet Microfontend UPSB Wallet wallet.upsb.xyz CI/CD codecov
💳 UPSB Credit Microfrontend UPSB Credit credit.upsb.xyz CI/CD codecov
💰 UPSB Deposit Microfrontend UPSB Deposit deposit.upsb.xyz CI/CD codecov

🏗️ How to start project localy

First of all, you need to start all microfronts and then the main core layer.

WALLET microfront

1) Clone repository git clone https://github.com/samakovuluk/upsb-wallet.git
2) Go to directory and install depencies cd upsb-wallet & npm install
3) Add PORT in .env file
4) Start microfront npm run start

With same step you need start the other microfront applications. After the starting all microfront applications. You need to run the main core layer application.

Start Main application

1) Clone repository git clone https://github.com/samakovuluk/upsb-main.git
2) Go to directory and install depencies cd upsb-main & npm install
3) Add URLs of all micfronts that you started in .env file
4) Start application npm run start

🛠️ Architecture

💻 Microfronend application with React/React Native

Core layer application is know all adresses of microfronts. In the main application in .env file we are giving there name and host of microfronts. And by the navigation it will rendering by retrieving main.js script from microfront and shows to the front part. Also, all applications are doesn't have any dependencies each other which will not crash all application. And any team which is working in microfront can run project in own host and develop itself, without the run core layer and other microfronts. And it increases the productivity and efficiency of the project.

📱 Microservice application with Kotlin and React

The excellence of this architecture, it can be used by a native application which is written in Kotlin. Everything is same with above written, and just the Kotlin application will be as main layer which will combine microfronts. And here the microfronts will render via webview in Kotlin application. You may think that this will take a long time to load and it will the bad way, In theory, No!, if you will configure caching correctly, the application will work fastly, and without any loads. And it will be impossible to notice that there has webview.

Package Description Demo
UPSB Kotlin Mobile Kotlin application Download

💝 Сollaborators

The project UPSB is created by these developers.


Samakov Ulukbek

Software Engineer



Burbu

Frontend Developer



Arina

Ui/Ux Designer