Skip to content

moayaan1911/nano-nft

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

2 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

๐Ÿš€ NanoNFT - AI-Powered NFT Generator

NanoNFT Logo

๐Ÿค– Create Unique NFTs with AI โ€ข Gasless Minting โ€ข Sepolia Testnet

Generate, mint, and collect AI-powered NFTs with zero gas fees


๐ŸŒ Live Demo โ€ข ๐Ÿ“ฆ Quick Start โ€ข โœจ Features

๐ŸŽฏ What is NanoNFT?

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.

โœจ Features

๐ŸŽจ AI Image Generation

  • 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

โ›ฝ Gasless Minting

  • 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

๐ŸŽช User Experience

  • 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

๐Ÿ”’ Smart Contract Features

  • 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

๐Ÿš€ Quick Start

Prerequisites

  • Node.js 18+ and pnpm
  • Wallet (MetaMask, Coinbase Wallet, etc.)
  • Sepolia ETH for paid minting (optional - gasless for free mints)

Installation

  1. Clone the repository

    git clone <repository-url>
    cd nano-nft
  2. Install dependencies

    pnpm install
  3. Environment Setup

    Create .env.local in 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
  4. Start development server

    pnpm dev
  5. Open your browser

    http://localhost:3000
    

๐Ÿ› ๏ธ Project Structure

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

๐Ÿ”ง Tech Stack

Frontend Framework

  • Next.js 15 - React framework with App Router
  • TypeScript - Type-safe JavaScript
  • Tailwind CSS - Utility-first CSS framework
  • Motion - Animation library (Framer Motion v12)

Web3 & Blockchain

  • Thirdweb v5 - Complete Web3 development platform
  • Sepolia Testnet - Ethereum test network
  • Foundry - Smart contract development framework
  • Solidity - Smart contract programming language

AI & APIs

  • Google Gemini Nano Banana - AI image generation
  • IPFS - Decentralized file storage
  • Thirdweb Storage - File upload and hosting

๐ŸŽฎ How to Use

  1. Connect Wallet - Click "Connect Wallet" and choose your preferred wallet
  2. Enter Prompt - Describe the NFT you want to create
  3. Generate - Click "Generate NFT" to create your AI artwork
  4. Mint - Click "Mint NFT" to mint it to the blockchain
  5. Collect - View your NFTs in the gallery below

User Limits

  • Free Mints: 3 per 24-hour period
  • Cooldown: 24 hours between free mint sessions
  • Paid Mints: Unlimited (requires Sepolia ETH)

๐ŸŒ Live Demo

Experience NanoNFT live at: nano-nft.vercel.app

Try it out:

  • Generate AI-powered NFTs
  • Experience gasless minting
  • Explore the quantum particle interface

๐Ÿ—๏ธ Smart Contracts

NanoNFT Contract

  • Location: contracts/src/NanoNFT.sol
  • Standard: ERC-721
  • Network: Sepolia Testnet
  • Features:
    • Gasless minting support
    • User creation limits
    • IPFS metadata storage
    • Owner controls

Deployment

cd contracts
forge build
forge test
forge script script/NanoNFT.s.sol --rpc-url $SEPOLIA_RPC_URL --broadcast

๐Ÿ” Environment Variables

Required Variables

# 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

Optional Variables

# Custom RPC endpoints
SEPOLIA_RPC_URL=https://sepolia.infura.io/v3/YOUR_PROJECT_ID

๐Ÿ“œ Scripts

  • pnpm dev - Start development server
  • pnpm build - Build for production
  • pnpm start - Start production server
  • pnpm lint - Run ESLint

๐Ÿค Contributing

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

๐Ÿ“„ License

This project is licensed under the MIT License - see the LICENSE file for details.

๐ŸŒŸ Support

If you find this project helpful, please give it a โญ on GitHub!

๐Ÿ‘จโ€๐Ÿ’ป About the Developer

Mohammad Ayaan Siddiqui

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! ๐Ÿ˜Žโœจ

About

AI NFT Generator and Gasless Minter

Topics

Resources

Stars

Watchers

Forks