project screenshot 1
project screenshot 2
project screenshot 3
project screenshot 4
project screenshot 5

LemonPay

A salary payment system which makes sure freelancer will get the payment & records all data on blockchain

LemonPay

Created At

ETHGlobal Brussels

Winner of

Blockscout - Best use of Blockscout Block Explorer

Prize Pool

The Graph - Best Use of Subgraph 1st place

Worldcoin - Pool Prize

Prize Pool

Project Description

Our project is a Payroll service built on a blockchain. It allows employers to create organizations and hire employees based on their wallet addresses or ENS names. Employees have a daily salary and they can withdraw their accrued salaries whenever they want. To do that, they must first prove they are real humans using the World ID service.

The service consists of three parts: The smart contracts, the backend and the frontend.

The smart contracts enable us to create organizations and manage employees, their activities and salaries on chain. They are written in solidity and deployed to the Base Sepolia testnet.

The backend is written in NextJS and does World ID proof verification when employees use World ID to prove their personhood.

The frontend is also written in NextJS and provides two different pages: one for the employer and one for the employee. Employers can add new employees, read events related to the service and pay our or delete employees. Employees can view their accrued salaries and pay them out to themselves whenever they want. The frontend also has the World ID integration, which the users can click to begin the verification process.

We utilized the following technologies in the project:

  • Worldcoin World ID (proof of personhood)
  • The Graph (indexing data)
  • WalletConnect (web3 and social connectivity)
  • ENS (naming wallets for easier recognition)
  • Blockscout (block exploration, debugging and contract calling)
  • Base blockchain (a good blockchain to run our smart contract service)

How it's Made

The smart contract is built and tested with solidity, hardhat and deployed to Base chain (Base-Sepolia). The onchain events are indexed with Thegraph subgraph. The main web application is built with React/NextJs with Typescript. Wagmi and Viem are used for interaction with the blockchain, @apollo/client is used for query data from Subgraph(GraphQL). WorldID is used for proof of personhood.

background image mobile

Join the mailing list

Get the latest news and updates