Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
27 changes: 27 additions & 0 deletions HLD.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
# `High Level Design 📄 of Psipher 🔐`
***
## `For Deployment Purpose`
![Psipher_Complete](PsipherComplete.png)

##### This architecture is fully based on serverless model, hence there is very less maintenance cost and cost effective.

### Why these?
- **Route 53** - This is optional for our Psipher. Only use when you have a custom domain. It is used to map custom domain(example.com) to application domain(randomly generated). It is a highly available and scalable Domain Name System Service.

- **CloudFront** - Helps for content delivery. It also saves Psipher from any cyber attack. It has low latency and uses static caching to achieve it.
- **S3** - It is used for CI/CD for backend and frontend application.
- **AWS Amplify** - It is used to deploy react application and maintain authenticity of users. It is also highly scalable and helps to store data securely.
- **ReactJS** - This is used to build user interface (frontend). It is open source JavaScript Library.
- **Cognito** - This is for user authentication at both backend and frontend which include JWT.
- **API Gateway** - It takes all API calls from react application and route them to lambda handlers.
- **Lambda** - This is a serverless function in which our spring boot (backend) application resides.
- **DynamoDB** - DynamoDB is a serverless DB in which user data is stored.
- **CloudWatch** - Used for metric and log monitoring.
- **VPC** - It helps Psipher components to establish a logical isolated section from users.

***

## `For Testing Purpose`
![Psipher_Swagger](PsipherSwagger.png)

- **SwaggerUI** - Used for API testing and documentation for our backend. This resides on Lambda.
Binary file added PsipherComplete.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added PsipherSwagger.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
2 changes: 2 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
This project was bootstrapped with [Create React App](https://github.com/facebook/create-react-app).

## High Level Design 📋 [Click here](HLD.md)

## Available Scripts

In the project directory, you can run:
Expand Down