This is a C++-based project that aims to implement a Stock Market application that allows multiple users to view/trade stocks through a GUI and provide per-user information and stock market data.
Make sure these libraries are on your computer
- sqlite3
- ssl
- crypto
- pthread
- boost_system
- boost_thread
clone these repos in the Backend folder after installing them.
// To run the backend
// Navigate to /Backend
make
cd services
//Run these on two bashes independently to initialize the backend services
./StockMaret
./StocksService
// To run the frontend
// Navigate to /Frontend
npm install
// For web-view
npm run dev
// For desktop view using electron
npm run dev
npm run electron
Note: I implemented a logger and it is enabled by default, to disable it you can set the macro (DISABLE_LOGGING) in Backend/Logger/Logger.h to 1
- Chain of Responsibilities -> Logger, ConsoleLogger, FileLogger
- Singleton -> AuthController, StockController, StockMarketController, TransactionController, UserController, DatabaseHandler
- MVC pattern
- Hazem Adel