DeVouch is a decentralized verification and attestation platform built on the Ethereum blockchain. The frontend application provides a user-friendly interface for creating, managing, and verifying attestations using the Ethereum Attestation Service (EAS).
- Web3 wallet integration for secure authentication
- Attestation creation and management
- Real-time verification of attestations
- Responsive and modern UI built with Next.js and Tailwind CSS
- Production: https://devouch.xyz/
- Staging: https://staging.devouch.xyz/
graph TD
A[Frontend] --> B[Ethereum Blockchain]
A --> C[Ethereum Attestation Service]
A --> D[Web3Modal]
A --> E[React Query]
- Framework: Next.js 14.2.3
- UI: React 18, Tailwind CSS
- State Management: React Query
- Web3 Integration:
- Wagmi
- Viem
- Web3Modal
- Attestation Service: EAS SDK
- Language: TypeScript
- User connects wallet via Web3Modal
- Frontend interacts with EAS SDK for attestation operations
- React Query manages data fetching and caching
- Wagmi handles blockchain interactions
- UI components render attestation data and user interactions
- Node.js (v18 or higher)
- Yarn package manager
- Web3 wallet (MetaMask, WalletConnect, etc.)
-
Clone the repository:
git clone https://github.com/your-org/devouch-fe.git cd devouch-fe
-
Install dependencies:
yarn install
-
Copy environment variables:
cp .env.example .env.local
-
Update environment variables in
.env.local
with your configuration
Required environment variables:
NEXT_PUBLIC_WALLET_CONNECT_PROJECT_ID
: Your WalletConnect project IDNEXT_PUBLIC_EAS_CONTRACT_ADDRESS
: EAS contract addressNEXT_PUBLIC_SCHEMA_REGISTRY_ADDRESS
: Schema registry contract address
Development mode:
yarn dev
Production build:
yarn build
yarn start
Run linting:
yarn lint
- Creating new attestations
- Verifying existing attestations
- Managing wallet connections
- Viewing attestation history
- Development: Local development
- Staging: Pre-production testing
- Production: Live application
-
Build the application:
yarn build
-
Deploy to your hosting platform (e.g., Vercel)
- Automated builds on main branch
- Pre-deployment checks
- Environment-specific configurations
-
Wallet Connection Issues
- Clear browser cache
- Ensure wallet is properly configured
- Check network connectivity
-
Attestation Creation Failures
- Verify wallet has sufficient funds
- Check network congestion
- Ensure correct contract addresses
- Browser console logs
- Network request monitoring
- Transaction status tracking
Please read CONTRIBUTING.md for details on our code of conduct and the process for submitting pull requests.
This project is licensed under the MIT License - see the LICENSE file for details.