AI-powered alt text generator for images with authentication and history tracking.
- Upload images and automatically generate descriptive alt text using Google's Gemini AI
 - User authentication with Google OAuth
 - History tracking of generated alt texts
 - Clean, minimal UI built with Next.js and Tailwind CSS
 - R2 storage for uploaded images
 
- Framework: Next.js 15 with Turbopack
 - Database: PostgreSQL with Prisma ORM
 - Auth: Better Auth
 - Storage: Cloudflare R2 with Better Upload
 - AI: Google Gemini 2.5 Flash Lite with AI SDK
 - UI: Tailwind CSS v4 + Shadcn UI
 - Deployment: Vercel
 
- 
Clone the repository
 - 
Install dependencies:
pnpm install
 - 
Set up environment variables:
DATABASE_URL="your-postgres-connection-string" BETTER_AUTH_SECRET="random-secret-string" GOOGLE_CLIENT_ID="your-google-oauth-client-id" GOOGLE_CLIENT_SECRET="your-google-oauth-client-secret" BETTER_AUTH_URL="http://localhost:3000" GOOGLE_GENERATIVE_AI_API_KEY="your-gemini-api-key" R2_ACCOUNT_ID="your-r2-account-id" R2_ACCESS_KEY_ID="your-r2-access-key" R2_SECRET_ACCESS_KEY="your-r2-secret-key" R2_BUCKET_NAME="your-r2-bucket-name" R2_PUBLIC_URL="your-r2-public-url"
 - 
Push database schema:
pnpm prisma db push
 - 
Run development server:
pnpm dev
 
- Upload an image (PNG, JPEG, or WebP - max 7MB)
 - The app automatically uploads it to R2 storage
 - AI generates descriptive alt text
 - Copy the generated text or view your history (requires login)
 
pnpm dev- Start development serverpnpm build- Build for productionpnpm start- Start production serverpnpm lint- Run ESLint