A Fully Managed Portoflio Analyzer with secure account managemenet and permission control!
Table of Contents
This Portfolio Analzyer was built as a project with Goldman Sachs to allow Financial Analysts to create, analyze, and share investment portfolios.
- User Registration and Login
- Password Validation
- Portfolio Creator and Editor
- Portfolio Analyzer for Standard Metrics
- Portfolio Interactive Charts
- User Entitlement Management
- Public Read-Only Portfolios
- Access Logs
- Secure Reset Password Flow
- Spring Security
- Java Mail
- JWT Serializer
- Spring Data Mongo
- Jackson
- Lombok
To get a local copy up and running follow these simple example steps.
Before you can run the application, you must have the following installed
- Java 17 and Above
- Maven and Spring Boot
- Node
- NPM
- This project uses MongoDB, and will not run unless the proper Environment Variables have been loaded.
- This project uses Spring Mail and will not run unless the SPRING MAIL Environment Variables have been configured
- This Project consists of both a Frontend and Backend. The Frontend runs on http://localhost:3000 while the Backend runs on http://localhost:8080.
- Clone the repo
git clone https://github.com/quinncheong/goldman-sachs-portfolio-manager.git
- Change Directory to the Frontend (/frontend)
- Install NPM packages
npm install
- Duplicate a copy of
.env.local-example
in the same directory, and rename it to.env.local
. - Run the Frontend
npm run dev
- Change Directory to the backend (/backend)
- Under backend/src/main/resources, duplicate a copy of
.env-dev-example
in the same directory and rename it to.env-dev
. - Fill in all the necessary details.
- MongoDB Details can be from when creating an Atlas Account.
- Spring Mail details can be found by creating a new GMAIL account to send out emails.
- Run the follow 2 scripts to compile and run the application.
./compile.bat
./run.bat
- If Step 4 does not work, you can run the backend directly with the command below
mvn spring-boot:run
Distributed under the MIT License. See LICENSE.txt
for more information.
This project was built by the following contributors:
Ang Wei Sheng - Github
Bryan Lee - Github
Chester Chia - Github
Elijah Khor - Github
Japheth Leong - Github
Quinn Cheong - Github