- Client
Slice Protocol
- Technologies
Next.js 15 (App Router), React 19, Wagmi v2 / Viem
- Links
Overview
A decentralized dispute resolution protocol on Base and Scroll, utilizing a cryptographic commit-reveal voting engine for trustless arbitration.
Technologies
- Next.js 15 (App Router)
- React 19
- Wagmi v2 / Viem
- Privy (Auth & Embedded Wallets)
- TanStack Query
- IPFS / Pinata
- Base / Scroll
Key Features
- Thick Client architecture handling complex crypto logic
- Commit-Reveal voting scheme to prevent on-chain vote copying
- Decentralized evidence storage using IPFS and CIDs
- Multi-chain compatibility (Base and Scroll)
- USDC staking and automated juror matchmaking
- Comprehensive debugging tools for network state
Challenges & Solutions
Cryptographic Voting Fairness
To prevent jurors from copying votes, I implemented a client-side Commit-Reveal scheme. The app locally generates a random salt, hashes it with the vote, and submits the commitment, ensuring secrecy until the reveal phase.
Critical State Persistence
Since the "salt" is required to reveal a vote and claim rewards, losing it would be catastrophic. I built a robust persistence layer using local storage to ensure data survives page reloads and session changes.
Hybrid Data Availability
Designed a flow where dispute evidence is uploaded to IPFS via Pinata for transparency, while the smart contract only stores the lightweight Content Identifier (CID) to optimize gas costs.
My Role
Lead Web3 Engineer responsible for the frontend architecture, cryptographic state management, and the integration of Wagmi/Viem for seamless smart contract interactions.
Project Links
Results
Successfully deployed a censorship-resistant court system that enables users to resolve conflicts without centralized intermediaries, featuring a modern, high-performance UI powered by Next.js 15 and React 19.