Inspiration

The inspiration for HoneyBadgerHR and the MVMT Payroll system stemmed from the desire to harness the potential of Cross-Chain Interoperability Protocol (CCIP) and to build Web3 solutions for Web2 problems. We identified Payroll as a traditional system that could greatly benefit from the transparency, efficiency, and flexibility of blockchain technology and reduce costs for companies. Our vision was to streamline the payroll process, reduce unnecessary costs, and provide a user-friendly and versatile system that could handle the dynamic needs of modern businesses.

What it does

HoneyBadgers MVMT Payroll is a cutting-edge Web3 HR solution that empowers employers to conduct and track payroll functions with unprecedented flexibility. It enables businesses to pay employees on various chains and allows employees to choose which chain or chains they wish to receive payments. For example, an employee could choose to get half of their paycheck on Base and the other half on Ethereum or split it all evenly across each CCIP support chain.

The platform also incorporates a KPI Raffle System as a means to incentivize and reward staff, fostering a productive and engaging work environment. By bridging the gap between traditional finance (TradFi) and decentralized finance (DeFi), CCIP Payroll delivers a comprehensive package that maximizes value for both employers and employees.

How we built it

We first started with understanding CCIP and how token transfers worked across chains. Once we had that functionality we built out the MVMT payroll contract which allows companies to add employees and specify their pay rate and if they are salaried or hourly. Employees once added, could then specify which chain and percentage of their paycheck they wanted to be paid on. We wanted to make this as simple as possible and not require a lot of previous Web3 knowledge so chose to use account abstraction to generate wallets for companies and employees.

From there we started to get into the front end and for that, we used Scaffold-ETH-2 and this dashboard template (https://github.com/srobbin01/daisyui-admin-dashboard-template). We refactored the dashboard from JavaScript/React to TypeScript/Next

From there we created a Raffle smart contract with the idea for comapnies to use raffles of digital assets to incentivize employees for __ fill in the blank. The real world / web2 example we worked off of is from my wife’s company. They do trivia every week before a staff meeting and the top 3 get gift cards. We believe there is a lot of potential as to what a Company could do with this raffle contract and has a lot of potential for gamification. Ideally, I would want to use Chainlink Functions to read sales data from a company/employee and then once an employee hits a certain “KPI” they would automatically be entered to a raffle.

Challenges we ran into

Account abstraction, specifically getting gasless transactions caused us some issues. We were using web3Auth along with Alchecmy's new aa-kit but we hit several roadblocks with it and the current documentation from Alchecmy on it referred to some libraries that are no longer available.

Front-end -> smart contract communication. We were a little rusty on this and ended up with an unnecessarily complex front-end code organization which led to some confusion.

Integrating Web3Auth with Wagmi - overcame incomplete docs

Accomplishments that we're proud of

4 randos came together as a team to build. Our ability to communicate, work together, and be respectful of everyone's time commitments.

learning to work together as a brand new team and ultimately succeeding in realizing a good portion of our vision.

We have 2 smart contracts that move tokens to the correct place, although they are not perfect they work!

We have a front end that is simple, intuitive, and doesn't require the user to be an expert on how to work with a Web3 wallet.

What we learned

We all learned a lot! We figured out how to send tokens across chains with CCIP. Figured out how to get random numbers from VRF and integrate with Automation. Dipped our toes into Functions.

We learned a lot about Account Abstraction and what goes on underneath the hood. Learned a bit about WAGMI hooks and wrestled with front-end Auth state changes. We learned how to connect Web3Auth to Wagmi

What's next for HoneyBadgerHR

Implementations we plan to add to HoneyBadgerHR and the MVMT payroll system include

  • Chainlink Functions: We would love to integrate Chainlink Functions to employee KPIs from a company's database or CRM. Using Functions would allow us to further automate the KPI Raffle system where anytime an employee hits their targets they get entered into a raffle for some digital asset.
  • DeFi: We want to incorporate DeFi into the system and allow users to have portions of their paycheck automatically put into a lending pool so they can earn rewards on portions of their paycheck they don't need right away. We also see this as an excellent opportunity for companies to dip a toe into defi and possibly transition from a traditional 401k to some defi solution and match their employees' contributions.

Built With

  • automation
  • ccip
  • chainlink
  • daisy
  • foundry
  • hardhat
  • nextjs
  • scaffold-eth-2
  • tailwind
  • vrf
  • web3auth
Share this project:

Updates