- To run this project, please install python and Node.js(https://nodejs.org/en/) first
- all required python package can be installed by running the below command
python -m pip install -r requirements.txt
If error occur when installing some packages in Windows, you may need to install Visual C++ in Visual Studio first
- As we use sophia.cs.hku.hk as the host, to connect the database, please connect to the HKUVPN first (https://www.its.hku.hk/documentation/guide/network/remote/hkuvpn2fa/windows)
- Or you can change the code in sqls.py (mysql.connector.connect(), in line 5-10) in order to use another host e.g. localhost:3356. You can import the table and record to your database by using the mysql command
# import from sql file
mysql> source h3566726.sql
- start the backend server
python server.py
after starting the server suvessfully, you will see the following output
- after starting the server, open another terminal and go to the directory of the Client folder, start the react app
COMP3278A-iKYC-Gp8-main> cd Client
Client> npm start
after starting the React App sucessfully, you will see the following output and the browser will automatically goto http://localhost:3000
if you see the error message "'react-scripts' is not recognized as an internal or external command" when starting the React App, you mau run the below command
npm install
after starting the backend server and React App, you can goto localhost:3000 start using our IKYC system
click the register button, input your unique username and your password, then click the button "Register your face" for registering your faceID. After clicked the button "Register your face", your device will try to open your camera and capture your face for training. Aftering training your face, you will automatically login the system
after clicking the account button, you can see your saving, credit and investment account. Click any one of the account, you can see the transaction page. By clicking external in Saving account, you can transfer money to the saving accounts of other people. You can transfer money within your Saving/Investmnet/Credit account by internal transaction
in the stock page, you can view different stocks. And you can buy stock by using the money in your investment account, so please transfer money to your investment account from your saving/credit account by doing internal transaction first ;)
you can search the transaction history by different selection option
(can leave some selection option to be empty e.g. transaction with amount <$1 in time period 12/11/2021-13/11/2021)
demo video: https://drive.google.com/drive/folders/1FV2h3xu1VhOoKSIShewkzHqVLPiPJEGF
guideline for Building: https://connecthkuhk-my.sharepoint.com/personal/edmundcy_connect_hku_hk/_layouts/15/onedrive.aspx?id=%2Fpersonal%2Fedmundcy%5Fconnect%5Fhku%5Fhk%2FDocuments%2FInstallation%20demo%2Emkv&parent=%2Fpersonal%2Fedmundcy%5Fconnect%5Fhku%5Fhk%2FDocuments
- Login Page
- Redirect/Change to Home Page after the face of the user is recorgnised
- Register Page
- Show loading animation instead of camera capture when the server is training model
- Turn off camera after capturing enough photos to train model in the server
- Check for the existence of username and insert new user into the DB
- Redirect/Change to the Home Page after the model is trained
- Can login via both faceID or (username and password)
- Home Page
- Transaction Page
- Stock Page
- Can show the balance of different account
- Can do transaction to other users' saving account (External Transaction)
- Can do transaction to other users' saving account (External Transaction)
- Can do transaction to same user's other account (Internal Transaction)
- Can search the transaction history by different selection option (can leave some selection option to be empty, or even use all the selection option)
- Show details of all available stocks, such as stock code, current price
- Can buy or sell stocks using investment account
- % change: The percentage change between current price and closing price
- Total spend: Total money spent on that stock
- History Profit: Total amount that earned from that stock
- Current Value: Current value of all owned stock