Take control of your wallet. See every permission. Revoke with one click.
Take control of your wallet. See every permission. Revoke with one click.
Every Web3 user accumulates wallet permissions over time. These permissions:
๐ด Often go unnoticed and unmanaged
๐ด Create security vulnerabilities
๐ด Remain active long after they're needed
๐ด Are difficult to find and revoke
Result: Millions of wallets have unnecessary exposure to potential exploits.
A beautiful, functional dashboard that gives users complete visibility and control over their MetaMask permissions.
Feature | Description |
|---|---|
๐ One-Click Connect | Seamless MetaMask integration |
๐ Risk Assessment | Color-coded risk levels (safe/moderate/dangerous) |
๐๏ธ Easy Revocation | Single or bulk permission removal |
๐ Search & Filter | Find permissions by name, risk, or type |
๐ Statistics | Overall risk score and permission breakdown |
๐ History Timeline | Track permission events over time |
๐ Dark Mode | Modern Web3 aesthetic |
๐ฑ Responsive | Works on desktop, tablet, and mobile |
Category | Technology |
|---|---|
Frontend | React 19, TypeScript |
Build | Vite |
Styling | Pure CSS (Glassmorphism, CSS Variables) |
Animations | Framer Motion |
Icons | Lucide React |
Wallet | MetaMask SDK |
Testing | Vitest, fast-check (Property-Based Testing) |
# Clone the repository
git clone https://github.com/AqilaRifti/PermitGuard.git
# Install dependencies
npm install
# Start development server
npm run dev
# Run tests
npm test
# Build for production
npm run build
src/
โโโ components/ # React UI components
โโโ hooks/ # Custom React hooks
โโโ services/ # MetaMask & API services
โโโ context/ # React context providers
โโโ types/ # TypeScript interfaces
โโโ utils/ # Utility functions
โโโ index.css # Global stylesWe use property-based testing to ensure correctness:
npm test25 tests covering:
โ Risk level calculation determinism
โ Filter result correctness
โ Filter idempotence
โ Stats calculation accuracy
Frosted glass effect with backdrop blur for a modern Web3 look.
๐ข Green (Safe) - Read-only access
๐ก Yellow (Moderate) - Write access with limits
๐ด Red (Dangerous) - Unlimited spending access
Framer Motion powered transitions for a polished feel.
Core dashboard functionality
Risk assessment system
Search and filter
Bulk revocation
Real-time permission alerts
Cross-chain support
Browser extension
Mobile app
Built with โค๏ธ for the Web3 community.
MIT License - feel free to use this project for your own purposes.
MetaMask team for the SDK
The Web3 security community
All the dApps that inspired better permission management