This is a list of needed instructions to set up your project locally, to get a local copy up and running follow these instructions.
-
cd into backend folder and create a file named "config.env" and fill it with this fields with your information.
NODE_ENV=development
PORT=[PORT YOU WANT]
DATABASE=[CONNECTION STRING OF YOUR DATABASE]
USER=[DATABASE USER NAME]
DATABASE_PASSWORD=[YOUR DATABASE PASSWORD]
JWT_SECRET=[YOUR JWT SECRET STRING]
JWT_EXPIRES_IN=[DATE example: 1d "for one day"]
JWT_COOKIE_EXPIRES_IN=[Date example: 1 "for one day"]
FILEPATH=https://sites.digitize.org/api # For returning photos in rows data
EMAIL_USERNAME=[EMAIL USERNAME TO SEND MAILS]
EMAIL_PASSWORD=[YOUR EMAIL APP PASSWORD]
EMAIL_FROM=[EMAIL USERNAME TO SEND MAILS]
-
Follow this article to install node js and npm Install Node js and npm
This project was made for Digitize company.
Website is in Arabic Language.
It is a website that has 2 kinds of users:
- Supervisor,
- Website Admin.
First: Supervisor:
- First, he logs in with his email and password that the website admin gave it to him.
- He can go to the default URL of the website to submit a survey in which he enters the data in multi steps sequence. Required data:
- Choose a Project Code.
- Choose a Site Name from list of site names of this project.
- Manually enter a Capinet Serial.
- Choose an Activity Group Name.
- Day Progress & select many squares from project map to mark them as complete or attach a photo.
- Choose a Delivery Way.
- Choose a Delivery Team Name.
- Choose a Site Engineer.
- Choose a Site Supervisor (Main).
- Choose a Site Supervisor (Assistant).
Second: Website Admin:
- First, he logs in with his email and password, and will be authorized as an admin, so he can see a different page.
- He can ask for data, he can export and download all data that the supervisors added as an excel file, or select a certain project to just export the data of this project.
- He can have another tab to create a supervisor account, he enters a new name, email, and password for the new supervisor, then submits and gives these information to the supervisor.
-
He have another tabs for:
- Create/ Delete project/s.
- Create/ Delete site name/s of a certain project.
- Create/ Delete activity group/s.
- Create/ Delete activity type/s.
- Create/ Delete site engineer/s.
- Create/ Delete site supervisor (main).
- Create/ Delete site supervisor (assistant).
- Create/ Delete delivery way/s.
- Create/ Delete delivery team/s.
- Upload a project map.
You can look on the API documentation at API Documentation
Yousef Khaled |
Moaz Mohammed |