Inspiration
In the web3 space, so much of the culture revolves around speculation, trading, and chasing quick gains. I wanted to build something that felt more human; something sentimental instead of financial. 9Lives was inspired by the idea of creating a small emotional anchor: a digital cat whose wellbeing reflects your consistency and care. Instead of thinking about charts and tokens, you’re thinking about showing up, checking in, and taking care of something that grows with you.
What it does
In the web3 space, so much of the culture revolves around speculation, trading, and chasing quick gains. I wanted to build something that felt more human — something sentimental instead of financial. 9Lives was inspired by the idea of creating a small emotional anchor: a digital cat whose wellbeing reflects your consistency and care. Instead of thinking about charts and tokens, you’re thinking about showing up, checking in, and taking care of something that grows with you.
How we built it
Smart Contracts • Written in Solidity • Deployed on Base Sepolia • Handles creating a cat, keeping track of streaks, lives, timestamps, and evolution stages
Frontend • React + Vite • Pixel art animations • Real-time updates via ethers.js • A “demo mode” system using mocks to allow testing without chain interactions
Circle Integration We integrated the Circle Sandbox API using a simple Express backend that fetches USDC testnet balance data. This demonstrates how 9Lives can support future features like: • USDC payments to revive your cat • Micro-transactions for cosmetic upgrades • Allowing creators to build additional utility around emotional digital pets
This satisfies the Circle bounty by using: • A backend server calling Circle’s API • Displaying sandbox balances inside the app
Challenges we ran into
• Handling streak logic and converting timestamps from chain to readable time
• Making the UI feel “alive” even when contract calls fail or rate limit
• Integrating Circle API through a backend environment and syncing frontend state
• Balancing real chain interaction with mock mode so the demo works smoothly
• Ensuring the entire experience feels sentimental, not transactional
Accomplishments that we're proud of
• Building a virtual pet that genuinely feels like something to care about
• Creating a clean UX that hides the complexity of blockchain
• Successfully integrating Circle’s API in a minimal but meaningful way
• Deploying working contracts on Base
• A smooth demo mode that works even without chain interactions
What we learned
• How to design on-chain state machines for streak-based logic
• How to integrate Circle’s API and consume it in a live frontend
• How to work with Base Sepolia + ethers v6
• The importance of UX when building emotional or sentimental crypto apps
• How to structure a mock backend for predictable demos under time pressure
What's next for 9Lives
• Full USDC restore-life payments
• Cosmetic upgrades purchasable via micro-transactions
• Social features to visit friends’ cats
• Daily quests connected to off-chain oracles
• NFT export option for players who want permanent memories of their cat’s evolution
Built With
- base
- circlesandboxapi
- ethers.js
- express.js
- hardhat
- node.js
- openzeppelin
- pixelart
- react
- sepolia
- solidity
- typescript
- usdc
- vite
Log in or sign up for Devpost to join the conversation.