Generate, mint, and collect AI-powered NFTs with zero gas fees
๐ Live Demo โข ๐ฆ Quick Start โข โจ Features
NanoNFT is an innovative AI-powered NFT generator that allows users to create unique digital artwork using Google's Gemini Nano Banana model. Built with gasless minting technology on the Sepolia testnet, it provides a seamless experience for creating and collecting NFTs without worrying about transaction fees.
- Powered by Google Gemini Nano Banana - Cutting-edge AI image generation
- Prompt-based Creation - Describe your vision in natural language
- High-Quality Output - Generate stunning artwork in multiple styles
- Instant Results - Get your NFT ready in seconds
- Zero Transaction Fees - Mint NFTs without paying gas
- Thirdweb Account Abstraction - Advanced wallet technology
- Seamless Experience - No crypto knowledge required
- Instant Confirmations - Fast blockchain transactions
- Quantum Particle Theme - Stunning 3D animated background
- Responsive Design - Works perfectly on all devices
- Real-time Feedback - Live progress indicators
- NFT Gallery - View your collection instantly
- ERC-721 Standard - Industry-standard NFT contract
- User Limits - 3 free mints per 24-hour period
- Metadata Storage - IPFS integration for permanent storage
- Sepolia Testnet - Safe testing environment
- Node.js 18+ and pnpm
- Wallet (MetaMask, Coinbase Wallet, etc.)
- Sepolia ETH for paid minting (optional - gasless for free mints)
-
Clone the repository
git clone <repository-url> cd nano-nft
-
Install dependencies
pnpm install
-
Environment Setup
Create
.env.localin the root directory:# Thirdweb Configuration NEXT_PUBLIC_THIRDWEB_CLIENT_ID=your_client_id_here THIRDWEB_SECRET_KEY=your_secret_key_here # Google Gemini API NANO_API=your_google_nano_api_key_here
-
Start development server
pnpm dev
-
Open your browser
http://localhost:3000
nano-nft/
โโโ app/ # Next.js App Router
โ โโโ api/ # API routes
โ โ โโโ ai-chat/ # AI chat endpoint
โ โ โโโ generate-nft/ # NFT generation endpoint
โ โโโ globals.css # Global styles
โ โโโ layout.tsx # Root layout
โ โโโ page.tsx # Main page
โโโ components/ # React components
โ โโโ NFTGenerator.tsx # Main NFT creation interface
โ โโโ NFTGallery.tsx # User's NFT collection
โ โโโ NFTMintForm.tsx # Minting form component
โ โโโ QuantumParticles.tsx # 3D particle background
โ โโโ ConnectWallet.tsx # Wallet connection
โโโ contracts/ # Foundry smart contracts
โ โโโ src/ # Solidity source files
โ โโโ test/ # Contract tests
โ โโโ script/ # Deployment scripts
โโโ lib/ # Utility libraries
โ โโโ client.ts # Thirdweb client config
โ โโโ contracts.ts # Contract instances
โโโ public/ # Static assets
- Next.js 15 - React framework with App Router
- TypeScript - Type-safe JavaScript
- Tailwind CSS - Utility-first CSS framework
- Motion - Animation library (Framer Motion v12)
- Thirdweb v5 - Complete Web3 development platform
- Sepolia Testnet - Ethereum test network
- Foundry - Smart contract development framework
- Solidity - Smart contract programming language
- Google Gemini Nano Banana - AI image generation
- IPFS - Decentralized file storage
- Thirdweb Storage - File upload and hosting
- Connect Wallet - Click "Connect Wallet" and choose your preferred wallet
- Enter Prompt - Describe the NFT you want to create
- Generate - Click "Generate NFT" to create your AI artwork
- Mint - Click "Mint NFT" to mint it to the blockchain
- Collect - View your NFTs in the gallery below
- Free Mints: 3 per 24-hour period
- Cooldown: 24 hours between free mint sessions
- Paid Mints: Unlimited (requires Sepolia ETH)
Experience NanoNFT live at: nano-nft.vercel.app
Try it out:
- Generate AI-powered NFTs
- Experience gasless minting
- Explore the quantum particle interface
- Location:
contracts/src/NanoNFT.sol - Standard: ERC-721
- Network: Sepolia Testnet
- Features:
- Gasless minting support
- User creation limits
- IPFS metadata storage
- Owner controls
cd contracts
forge build
forge test
forge script script/NanoNFT.s.sol --rpc-url $SEPOLIA_RPC_URL --broadcast# Thirdweb (get from https://thirdweb.com/dashboard)
NEXT_PUBLIC_THIRDWEB_CLIENT_ID=your_client_id_here
THIRDWEB_SECRET_KEY=your_secret_key_here
# Google Gemini (get from https://aistudio.google.com/)
NANO_API=your_google_nano_api_key_here# Custom RPC endpoints
SEPOLIA_RPC_URL=https://sepolia.infura.io/v3/YOUR_PROJECT_IDpnpm dev- Start development serverpnpm build- Build for productionpnpm start- Start production serverpnpm lint- Run ESLint
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
If you find this project helpful, please give it a โญ on GitHub!
Assalamualaikum guys! ๐ This is Mohammad Ayaan Siddiqui (โฆmoayaan.ethโฆ). Iโm a Full Stack Blockchain Developer and MBA in Blockchain Management with over 2 years of experience rocking the Web3 world! ๐ Iโve worn many hats:
- Research Intern at a Hong Kong-based firm ๐ญ๐ฐ
- Technical Co-Founder at a Netherlands-based firm ๐ณ๐ฑ
- Full Stack Intern at a Singapore-based crypto hardware wallet firm ๐ธ๐ฌ
- Blockchain Developer at a US-based Bitcoin DeFi project ๐บ๐ธ
- Completed PG Diploma in Blockchain Management from Cambridge International Qualifications (CIQ) ๐ฌ๐ง
- Currently pursuing an online MBA in Blockchain Management from University of Studies Guglielmo Marconi, Italy ๐ฎ๐น
Letโs connect and build something epic! Find me at moayaan.com ๐
If you liked this project, please donate to Gaza ๐ต๐ธ UNRWA Donation Link
Happy coding, fam! ๐โจ
