- To interact and edit the code of the smart contract, one does not need more than to navigate to the the browser IDE Remix at https://remix.ethereum.org/.
- Once on the home screen, please select "Load from Gist" and enter the address https://gist.github.com/MBeshkov/a8301d6b87c0721dfd9b68147635ceec.
- This should immediately modify the workspace and display JobActivity.sol, the contract produced by this honours project.
- To compile the code in preparation for deployment, one can navigate to the Compiler tab on the left side bar and click on the relevant button. It might also be useful to mark "Auto compile" for an easier workflow.
- The tile under compilation is where deployment and all interactions occur. This is where the user can:
- The console situated on the right of the deployment segment and below the code of the contract, will provide useful information about every transaction - status, identifiers, gas costs, output, etc.
- Finally, the debugger tile provides comprehensive debugging tools that are able to examine breakpoints in the code, but also to replay completed transactions and demonstrate the change of state with every step.
2024-04-26_09-22-51.mp4
Prerequisites:
- Python 3.x (https://www.python.org/downloads/)
- Node.js and npm (https://nodejs.org/en)
Steps:
-
Clone the repository
git clone https://github.com/MBeshkov/dlt-job-application.git
-
Install Back-end Dependencies
-
Navigate to the back-end folder:
cd backend
-
Install the required Python packages listed in
requirements.txt
:
pip install -r requirements.txt
- Install Front-end Dependencies
-
Navigate to the front-end folder:
cd ../frontend
-
Install the required JavaScript packages listed in
package.json
:
npm install
- Run the Back-end Server
-
Navigate back to the back-end folder:
cd ../backend
-
Start the Flask server using the script that acts as the back-end:
python runHelpers.py
- Run the Front-end Application
-
Navigate to the front-end folder:
cd ../frontend
-
Start the React development server:
npm run start
Now the back-end server should be running and the front-end application should be accessible at http://localhost:3000.
A note on the database set-up in backend/comparativeFeedbackGenerator.py
: Currently, there is a connection made with a test MongoDB database belonging to the author of this project. That database is meant to support a university demonstration and is not meant to be a scalable and durable part of the project. The access details provided in the uri =
line are purposefully left there until this project is assessed in the University of Aberdeen. After that, this line will be deleted and whomever desires to maintain the code will be required to create their own database and include their own uri in the code. For reference how to structure one's collection, please refer to the figure below. The author also recommends that if further work is pursued in this manner, the sensitive information should instead be stored in the form of environment variables.