Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

first pull #1

Open
wants to merge 51 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
51 commits
Select commit Hold shift + click to select a range
154acd4
basic add and delete functionality handled for experience
divyajyotiuk Jun 30, 2019
1c1f9fd
portis added
divyajyotiuk Jul 3, 2019
8532207
portis added
divyajyotiuk Jul 3, 2019
c87968c
ui modify
Akshat7321 Jul 3, 2019
6b94ad7
db changes made in jobseeker,regiroute,Server.js
divyajyotiuk Jul 3, 2019
ccbf40b
homepage companyRegistration changes
Akshat7321 Jul 3, 2019
06052bb
succesfully merged with dj
Akshat7321 Jul 3, 2019
4c3af49
Login Registration with Portis Successful
Akshat7321 Jul 3, 2019
0de7402
Experience connected with database, edit about happening
divyajyotiuk Jul 4, 2019
f12d9b6
Experience completed
divyajyotiuk Jul 5, 2019
17b5e1f
Company Profile page with backend
Akshat7321 Jul 5, 2019
6518d07
Merge branch 'akshat2'
Akshat7321 Jul 5, 2019
062831d
Revert "Experience completed"
divyajyotiuk Jul 5, 2019
1244a1d
Merged with akshat
divyajyotiuk Jul 5, 2019
1c15fae
in sync with my repo blockhire
divyajyotiuk Jul 6, 2019
45de455
Company Jobs page done
Akshat7321 Jul 7, 2019
ad6a7ab
validation completed, in sync with my blockhire repo
divyajyotiuk Jul 7, 2019
57fb9c6
"jobs page added"
divyajyotiuk Jul 7, 2019
15db487
Token transfer complete, database name changed to GethHired and passw…
abhikedia Jul 7, 2019
75e0f9a
Token transfer complete, both for candidate and company.
abhikedia Jul 7, 2019
a82c03c
Linked with admin page
abhikedia Jul 7, 2019
79b01a8
Reject button linked with blockchain.
abhikedia Jul 7, 2019
695250c
validator sign working
abhikedia Jul 7, 2019
0512483
Job Posting done using bc
abhikedia Jul 8, 2019
bca164d
Apply job bc complete
abhikedia Jul 8, 2019
c53c69f
Shortlisting done
abhikedia Jul 8, 2019
88406e2
Balance viewable
abhikedia Jul 8, 2019
68f9380
Balance viewable
abhikedia Jul 8, 2019
d56f560
Contract Update
abhikedia Jul 8, 2019
6323a6c
Akshat Final Change with error in minimalProfile
Akshat7321 Jul 8, 2019
07f07fc
changes in Homepage and education functional
divyajyotiuk Jul 8, 2019
3970509
home page changed and education made functional
divyajyotiuk Jul 8, 2019
2af556c
home page changed and education made functional
divyajyotiuk Jul 8, 2019
3be43a1
previous commit
divyajyotiuk Jul 8, 2019
396a95e
server.js changed
divyajyotiuk Jul 8, 2019
1e849fb
verification page partial functional
divyajyotiuk Jul 9, 2019
e702a31
verification page beta
Siddhartha-chaki Jul 10, 2019
145b5d7
Update README.md
abhikedia Jul 10, 2019
8d7a9f5
verfication page final
Siddhartha-chaki Jul 10, 2019
c643275
Merge branch 'master' of https://github.com/fossee-ethera/Geth-Hired-UI
Siddhartha-chaki Jul 10, 2019
114b3bb
Update README.md
divyajyotiuk Jul 10, 2019
f55ce03
Update README.md
divyajyotiuk Jul 10, 2019
10fefc8
last commit
divyajyotiuk Jul 10, 2019
aed3b20
database files added
divyajyotiuk Jul 10, 2019
26b3985
Update README.md
divyajyotiuk Jul 10, 2019
67c1c48
Bug Fixes
abhikedia Jul 11, 2019
7a3283f
comments
Siddhartha-chaki Jul 13, 2019
c69007e
Update README.md
divyajyotiuk Aug 10, 2019
062bbd5
Adding project documents
Nov 22, 2019
112ca17
Adding architecture diagram
Nov 22, 2019
fe5b2ee
Update README.md
raehasandalwala Nov 22, 2019
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
145 changes: 117 additions & 28 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,112 @@
# Geth-Hired

### Purpose

The main purpose of the product is to help individuals to make their professional profile to showcase their education, achievements, experiences where each certificate can be validated to prove their genuineness from respective organizations.
The other aspect of this product is to provide companies/recruiters a platform where they can post their jobs and get the most authentic, legitimate, valid candidates suited as per their requirements in easier, faster and cost-effective ways.

### Product Scope

- Easy profile building where anyone can showcase their true achievements with proper validation credential from certificate respective authorities and easy verification of certificates.
- To provide a platform for job searching, job applying in more secure transparent while considering candidate privacy.
- For recruiters to post jobs easily and come across verified genuine legitimate candidates.
- Incentives for certificate issuer/ validators of certificate on validate certificates and store signature credentials then in most secure, reliable, immutable way.
- The main feature which makes it different from other job portal is that recruiters can verify shortlisted candidates in just one click as the certificates are verified beforehand from their respective authority.
- User has control over his/her sensitive data like contact information, avoiding the misuse of user information.

### Product Functions

- There are two primary roles present in the system - a job seeker, validator/recruiter. The transactions happen in the form of tokens on the system.
- Candidate is onboarded on the platform and rewarded tokens on registering.
- The certificates and achievements uploaded are then requested for validation by The secondary roles being the validator, recruiter, administrator.the candidate which consumes tokens.
- The administrator forwards these requests to authentic authorities for signing. (This can be done on-chain or off-application but in this release it is on-application)
- The validators sign and rewarded with tokens. They can either sign or reject the incoming request. The status is stored on the database.
- After validating all the uploaded certificates, a candidate is eligible to apply for the job.
- Companies/recruiters post the jobs and get a listing of validated profiles.
- They can verify these profiles on the blockchain.

### Architecture Diagram
![](documents/Architecture-diagram.png)

## Tech Stack

- Solidity 0.5.x | Smart contracts
- Truffle | IDE
- Remix | IDE
- Ropsten | Blockchain test network
- Infura | deployment keys
- Swarm | distributed storage
- MySQL
- Portis | Handling ethereum wallet
- Web3 (commonly called web3.js)
- Node.js
- React (react.js)


## Setup

### Deploy Smart Contracts

- Open [Remix-IDE](http://remix.ethereum.org).

- Copy all the smart contracts from the Smart-Contract repository and save them with the same name in the editor.

`git clone https://github.com/fossee-ethera/Smart-Contracts.git`

- Now, compile [ExampleToken.sol](https://github.com/fossee-ethera/Smart-Contracts/blob/master/ExampleToken.sol) and [Escrow.sol](https://github.com/fossee-ethera/Smart-Contracts/blob/master/Escrow.sol)

- First deploy ExampleToken.sol on Injected Web3 (Ropsten Test Network) and then copy contract address generated. Then, deploy Escrow.sol by pasting this contract address of ExampleToken.sol.

- Copy the ABI, contract addresses of ExampleToken.sol in [Abis.js](https://github.com/fossee-ethera/Geth-Hired-UI/blob/master/src/components/Abis.js) and of Escrow.sol in [Abis2.js](https://github.com/fossee-ethera/Geth-Hired-UI/blob/master/src/components/Abis2.js)

## Running Geth-Hired

Now clone the [Geth-Hired-UI](https://github.com/fossee-ethera/Geth-Hired-UI) repository.

`https://github.com/fossee-ethera/Geth-Hired-UI.git`

`cd Geth-Hired-UI`

### Install Dependencies

`npm install` or `sudo npm install`

These dependencies can be found in [package.json](https://github.com/fossee-ethera/Geth-Hired-UI/blob/master/package.json)

### Setting up MySQL database

- Import the [database.sql](https://github.com/fossee-ethera/Geth-Hired-UI/blob/master/database.sql) file to create SQL database or just paste contents on your mysql terminal.

`mysqldump --databases gethdb > database.sql`

`gethdb` is the name of the database.

- Edit connection in [Server.js](https://github.com/fossee-ethera/Geth-Hired-UI/blob/master/Server.js)

```javascript
const connection = mysql.createConnection({
host: "localhost",
user: "root",
password: "mysql",
database: "gethdb" });
```

- Run the Server.js file

`node Server.js`

### [Admin-Page](https://github.com/fossee-ethera/Admin-Page) Setup

`git clone https://github.com/fossee-ethera/Admin-Page.git`

`cd Admin-Page`

### Run both the repositories using

`npm start`



This project was bootstrapped with [Create React App](https://github.com/facebook/create-react-app).

## Available Scripts
Expand Down Expand Up @@ -37,32 +146,12 @@ Instead, it will copy all the configuration files and the transitive dependencie

You don’t have to ever use `eject`. The curated feature set is suitable for small and middle deployments, and you shouldn’t feel obligated to use this feature. However we understand that this tool wouldn’t be useful if you couldn’t customize it when you are ready for it.

## Learn More

You can learn more in the [Create React App documentation](https://facebook.github.io/create-react-app/docs/getting-started).

To learn React, check out the [React documentation](https://reactjs.org/).

### Code Splitting

This section has moved here: https://facebook.github.io/create-react-app/docs/code-splitting

### Analyzing the Bundle Size

This section has moved here: https://facebook.github.io/create-react-app/docs/analyzing-the-bundle-size

### Making a Progressive Web App

This section has moved here: https://facebook.github.io/create-react-app/docs/making-a-progressive-web-app

### Advanced Configuration

This section has moved here: https://facebook.github.io/create-react-app/docs/advanced-configuration

### Deployment

This section has moved here: https://facebook.github.io/create-react-app/docs/deployment

### `npm run build` fails to minify
### Developers
* Abhishek Kedia
* Akshat Jain
* Divyajyoti Ukirde
* Siddharth Chaki
* Vindeep Chaudhari

This section has moved here: https://facebook.github.io/create-react-app/docs/troubleshooting#npm-run-build-fails-to-minify
### Tech Lead
Mr. Parag Tiwari
Loading