Secure, temporary, revocable on-chain session permissions for Web3 applications.
Features β’ Architecture β’ Quick Start β’ Deployment β’ Contributing
Smart Session Dapp enables users to grant temporary, granular permissions to decentralized applications without signing every transaction. Built with Reown AppKit and WalletConnect Smart Sessions, this production-ready dApp demonstrates the future of frictionless Web3 UX.
Traditional Web3 interactions require users to sign every transaction, creating:
- Constant interruptions during gameplay or DeFi interactions
- Poor user experience compared to Web2 applications
- Security fatigue leading to blind signing
Smart Sessions allow users to:
- Grant temporary permissions to specific contracts and functions
- Set automatic expiration times (1 hour, 1 day, 7 days)
- Revoke access instantly at any time
- Maintain full custody and control
Define exactly what an app can doβlimit by contract address, function selector, and value.
Sessions expire automatically. No forgotten approvals, no lingering risks.
Kill any session instantly from the dashboard. You are always in control.
Deploy and manage sessions across Base, Optimism, and Celo.
Modern glassmorphism design with real-time timers, animations, and toast notifications.
smart-session-dapp/
βββ src/ # React + Wagmi + AppKit frontend
β βββ components/ # UI components
β β βββ ui/ # Design system (Button, Card, Modal, Timer, Toast)
β β βββ layout/ # Layout, Navbar, Sidebar
β β βββ create-session/# Session creation wizard
β β βββ dashboard/ # Session list and management
β βββ hooks/ # Custom React hooks (useSession)
β βββ lib/ # Config (wagmi, appkit, contracts)
βββ server/ # Smart Session executor backend
βββ contracts/ # Solidity contracts
βββ scripts/ # Hardhat deployment scripts
| Network | Address | Explorer |
|---|---|---|
| Base | 0x1363FfBE6e5280c2a310BE7b50Eaad4d3Bc57644 |
View |
| Optimism | 0xC19c0602d25e26f496037c42E6A103074d2CBd85 |
View |
| Celo | 0xC19c0602d25e26f496037c42E6A103074d2CBd85 |
View |
- Node.js 18+
- npm or yarn
- A Reown Cloud project ID
# Clone the repository
git clone https://github.com/cryptoflops/smart-session-dapp.git
cd smart-session-dapp
# Install dependencies
npm install
# Copy environment variables
cp .env.example .envEdit .env with your credentials:
VITE_REOWN_PROJECT_ID=your_project_id
VITE_SMART_SESSION_TARGET_ADDRESS=0x1363FfBE6e5280c2a310BE7b50Eaad4d3Bc57644# Start frontend
npm run dev
# Start backend (separate terminal)
npm run dev:server- Push to GitHub
- Import repository in Vercel
- Add environment variables:
VITE_REOWN_PROJECT_IDVITE_SMART_SESSION_TARGET_ADDRESS
- Deploy
# Compile
npm run compile
# Deploy to Base
npm run deploy
# Verify
npx hardhat verify --network base <DEPLOYED_ADDRESS>| Category | Technology |
|---|---|
| Frontend | React, Vite, TypeScript |
| Styling | Tailwind CSS, Glassmorphism |
| Web3 | wagmi, viem, Reown AppKit |
| Contracts | Solidity, Hardhat |
| Backend | Express.js, TypeScript |
Smart Sessions delegate capabilities to backend signers. Always:
- Audit session scopes and permissions
- Use short expiration times
- Monitor session activity
- Revoke unused sessions
See SECURITY.md for vulnerability reporting.
Contributions are welcome! See CONTRIBUTING.md for guidelines.
- Fork the repository
- Create a feature branch
- Submit a pull request
MIT License. See LICENSE for details.
cryptoflops.base.eth | psyhodivka.eth
Address: 0x0Cf485F4c6b2a6087B4D5d4A590cAe8d22D7FA9a
Built with β€οΈ using Reown AppKit and Base