Money-Tree by Soft-Investors
This project is a Capstone Software Engineering Design Project. It is a project for final year software engineering undergraduates at Concordia University (course codes ENGR 490 & SOEN 490). Students work in teams of 7 to 8 members to construct a significant software application. The class meets at regular intervals. Team members will give a presentation of their contribution to the project.
It consists of 3 major releases with 3 sprints each, where broad requirements are specified in an outline.
Supervised by Dr. Ali Akgunduz, PhD (ENGR 490) and Dr. Nikolaos Tsantalis, PhD (SOEN 490)
Sponsored By: Royal Bank of Canada (RBC) [Lindsay Bangs]
A web platform that encourage good investing practices.
Investing in equities is a mysterious and complex concept to many people in the younger generations. This discourages them from investing, leading them with less savings.
Investing usually requires either a broker that communicates with you over the phone, or an online broker. Phone brokers are a slow and expensive process. Online brokers are faster and cheaper, but are complicated to use as they contain a lot of harder concepts and aren’t optimised for inexperienced users
Our solution is to create a platform the younger generation is familiar with and encourage good investing practices.
It will be a web application that will allow users to trade equities in a social manner. Users will be able to follow other users similar to Twitter and see what actions they are doing as well as what equities they are holding. We will also include a leaderboard for an aspect of gamification. Through the use of social media and gamification, we hope to encourage the younger generation to invest and grow their savings. This will allow this generation to have a voice in terms of which company they believe in and want to succeed, an activity usually geared towards older people with a greater financial power.
This is a monorepo that consists of two parts:
- Alessandro Kreslin (Team Leader)
- David-Étienne Pigeon
- Razine Ahmed Bensari
- Walter Fleury
- Seyedhossein Noorbakhsh
- Arthur Tourneyrie
- Abdulrahim Mansour
- Marwan Ayadi
Other frameworks that we use are listed under either the client part or the backend part.
Follow these steps to get a working version of our application
**Make sure you also have the prerequisites from both the client and backend **
- Clone the repo
git clone https://github.com/DPigeon/Money-Tree.git
-
Get the secrets from the slack #secret-sharing and store them in your environment
-
Run the Docker Container (from the root folder of the project)
docker compose up
The client is running on port 80,
You can access it with the following link http://localhost:80/
Similarly, other services can be accessed:
- The backend is running on port 8080
- Neo4j Database is running on port 7474(bolt) and the browser 7687(http)
See the open issues for a list of proposed features (and known issues).
See License
- cd into the root directory of the project
- Run the command
ln -s -f ../../hooks/pre-commit .git/hooks/pre-commit && chmod +x ./hooks/pre-commit
- Download & install the PlantUML extension on VS code for the frontend or plugin on IntelliJ for the backend
- Open the diagram directory on either client or backend in your IDE
- Click on any .puml file you want to edit
- Install the Graphviz library by following the instructions here
- Start using PlantUML and with the documentation here