CryptoCats is an open-source NFT dapp boilerplate that lets users create, breed, and trade on-chain cat collectibles, built with Hardhat, Next.js, TypeScript, Chakra UI, Wagmi, and Viem.
What is CryptoCats?
CryptoCats is a full-stack decentralized application (dapp) for creating, breeding, and selling NFT cats, deployed on the Sepolia testnet but compatible with all EVM networks. It was originally built as part of the Moralis Academy Ethereum Dapp Programming course and is published on GitHub by Pedrojok01. The project couples Hardhat-based Solidity smart contracts with a Next.js frontend, and uses Wagmi/Viem for wallet connectivity. Users mint cat NFTs via the Cat Factory (limited to 100), view their collection, breed two cats, and list or buy cats on a marketplace.
Key Features
- Cat Factory — Design and mint a cat NFT for free in the browser, limited to 100 cats per contract.
- MyCats/Show — Display all cats in a user's collection after connecting a wallet.
- MyCats/Breed — Select two parent cats, breed a kitten, and see which inherited characteristics come from each parent.
- MyCats/Sell — Create sell offers to list cats on the built-in marketplace.
- Marketplace — Buy cats listed by other users or remove your own active sell offers.
- Sepolia deployment — The dapp runs live at crypto-cats.netlify.app and the contracts are deployed on the Sepolia testnet after migrating off Goerli.
- EVM compatibility — The contracts and frontend work on any EVM-compatible network by updating chain config and addresses.
- Modern stack — Smart contracts in Solidity with Hardhat, frontend in Next.js and TypeScript, UI with Chakra UI, and Web3 logic via Wagmi, Viem, and WalletConnect v2 support.
Who should use CryptoCats?
- Ethereum/Web3 developers wanting a complete NFT dapp reference or starter: they can clone the repo, deploy their own contracts, and repurpose the marketplace/breeding logic.
- Learners taking Moralis Academy's Ethereum Dapp Programming course or studying full-stack dapp architecture can study a working implementation that covers contracts, frontend, and deployment.
- Builders needing a quick NFT collectible demo can deploy the frontend on Netlify, point it at their own Sepolia contracts, and have a live site without writing UI from scratch.
Use cases
- Indie NFT projects: Use the Cat Factory and Marketplace patterns to ship a mint-and-trade experience quickly.
- Smart contract practice: Deploy the Hardhat contracts on Sepolia, test breeding and selling logic, and verify with the provided configuration.
- Frontend developers learning Wagmi/Viem: Study how the app replaces ethers.js with Viem, integrates WalletConnect v2, and uses custom hooks to manage wallet state.
How does CryptoCats work?
After cloning the repo, you install dependencies for the hardhat and nextjs_frontend folders separately. Deploy the contracts with yarn deploy from the hardhat directory, edit contract addresses and ABIs in src/data/constant.ts and src/data/abis/, then start the frontend locally with yarn dev or deploy it to Netlify. Users connect a Web3 wallet like MetaMask or Coinbase Wallet, mint cats for free (up to 100), breed them, and list them on the marketplace.
FAQ
Is CryptoCats free to use?
The Cat Factory lets users mint cats for free on Sepolia, and the GitHub project is MIT-licensed. Buying cats on the marketplace requires testnet ETH, which you can get from a Sepolia faucet.
What blockchains does CryptoCats support?
The contracts are compatible with all EVM networks. The live demo runs on Sepolia, and the repo instructions explain how to deploy to other networks by editing hardhat.config.ts, the deploy script, and chain constants.
Does CryptoCats use MetaMask?
It supports any Web3 wallet compatible with WalletConnect v2, including MetaMask, Coinbase Wallet, and others.
How many cats can I mint?
The Cat Factory mint is limited to 100 cats per deployed contract.








