A modern AI-powered image manipulation platform that combines multiple AI services to provide image generation, background removal, upscaling, and intelligent image analysis capabilities.
- 🎨 AI Image Generation: Create stunning images from text prompts using advanced AI models
- 🖼️ Background Removal: Remove backgrounds from images with AI precision
- 📈 Image Upscaling: Enhance image resolution while maintaining quality
- 🔍 Image Analysis: Get detailed AI-powered insights about your images
- 🎙️ Voice Input: Use voice commands to generate images (hands-free experience)
- 📜 History Tracking: Keep track of all your image operations and results
- 🎮 Interactive Playground: Experiment with various AI image tools in one place
- Framework: Next.js 15.5 with App Router
- UI Library: React 19.1
- Language: TypeScript
- Styling: Tailwind CSS 4.x
- Animations: Motion (Framer Motion)
- 3D Graphics: OGL (WebGL library)
- Runtime: Node.js with Express 5.x
- AI Services:
- Google Gemini AI
- OpenAI
- Hugging Face
- Picsart API
- Pollinations.ai
- Image Processing: Sharp
- File Upload: Multer
- Storage: ImageKit
Before you begin, ensure you have the following installed:
- Node.js (v18 or higher)
- npm or yarn or pnpm
You'll also need API keys for:
- Google Gemini AI
- OpenAI (optional)
- Hugging Face (optional)
- Picsart API (optional)
- ImageKit
git clone https://github.com/YuSuBH/imAIger.git
cd imAIgercd server
npm installcd ../web
npm installCreate a .env file in the server directory:
# Server Configuration
PORT=3001
# Google Gemini AI
GEMINI_API_KEY=your_gemini_api_key_here
# OpenAI (Optional)
OPENAI_API_KEY=your_openai_api_key_here
# Hugging Face (Optional)
HUGGINGFACE_API_KEY=your_huggingface_api_key_here
# Picsart API (Optional)
PICSART_API_KEY=your_picsart_api_key_here
# ImageKit
IMAGEKIT_PUBLIC_KEY=your_imagekit_public_key
IMAGEKIT_PRIVATE_KEY=your_imagekit_private_key
IMAGEKIT_URL_ENDPOINT=your_imagekit_url_endpointCreate a .env.local file in the web directory if needed:
NEXT_PUBLIC_API_URL=http://localhost:3001cd server
npm run devThe server will run on http://localhost:3001
cd web
npm run devThe web app will run on http://localhost:3000
Navigate to http://localhost:3000 to see the application in action!
imAIger/
├── server/ # Backend Express server
│ ├── src/
│ │ ├── server.js # Main server file
│ │ └── routes/ # API route handlers
│ │ ├── analyze.js # Image analysis endpoint
│ │ ├── bgRemove.js # Background removal endpoint
│ │ ├── generate.js # Image generation endpoint
│ │ ├── interpret.js # AI interpretation endpoint
│ │ └── upscale.js # Image upscaling endpoint
│ └── package.json
│
├── web/ # Next.js frontend
│ ├── app/ # App router pages
│ │ ├── analyze/ # Image analysis page
│ │ ├── bgRemove/ # Background removal page
│ │ ├── generate/ # Image generation page
│ │ ├── history/ # History page
│ │ ├── playGround/ # Interactive playground
│ │ └── upscale/ # Image upscaling page
│ ├── components/ # React components
│ ├── hooks/ # Custom React hooks
│ ├── lib/ # Utility functions
│ └── package.json
│
└── README.md
- Navigate to the Generate page
- Enter a text prompt describing the image you want
- Optionally use voice input by clicking the microphone icon
- Click "Generate" and watch the AI create your image
- Go to the Background Remove page
- Upload an image
- Click "Remove Background"
- Download the processed image
- Visit the Upscale page
- Upload an image
- Select upscaling options
- Click "Upscale" to enhance the image
- Navigate to the Analyze page
- Upload an image
- Get AI-powered insights and descriptions
- Experiment with all features in one interactive space
- Switch between different AI tools seamlessly
- View and manage your operation history
cd server
# Backend runs directly with Node.js (no build step needed)cd web
npm run build
npm startcd web
npm run lint| Endpoint | Method | Description |
|---|---|---|
/generate |
POST | Generate images from text prompts |
/bgRemove |
POST | Remove background from images |
/upscale |
POST | Upscale image resolution |
/analyze |
POST | Analyze image content |
/interpret |
POST | Get AI interpretation of images |
Contributions are welcome! Please feel free to submit a Pull Request.
- Fork the repository
- Create your feature branch (
git checkout -b feature/AmazingFeature) - Commit your changes (
git commit -m 'Add some AmazingFeature') - Push to the branch (
git push origin feature/AmazingFeature) - Open a Pull Request
This project is licensed under the ISC License.
YuSuBH
- GitHub: @YuSuBH
- Next.js - The React Framework
- Google Gemini AI - AI capabilities
- Pollinations.ai - Free image generation
- Picsart API - Image manipulation services
- ImageKit - Image storage and delivery
- Hugging Face - AI models and inference
If you have any questions or run into issues, please open an issue on GitHub.
Made with ❤️ by YuSuBH