Aura-AI is a full-stack web application that generates captions for uploaded images using a powerful AI model. It leverages the BLIP (Bootstrapping Language-Image Pretraining) model from Hugging Face and provides a clean UI built with React and Tailwind CSS.
| Frontend | React, Tailwind CSS, Vite |
| Backend | Python, FastAPI |
| AI Model | BLIP (Hugging Face Transformers) |
- 📤 Upload any image - Support for multiple image formats
- 🤖 AI-powered captions - Automatically generates descriptive captions
- 📋 Copy to clipboard - One-click caption copying
- 🎨 Clean, minimal UI - Modern design with Tailwind CSS
- ⚡ Fast API backend - Powered by FastAPI and Hugging Face Transformers
-
Navigate to the backend directory:
cd backend -
Install dependencies:
pip install -r requirements.txt
-
Start the FastAPI server:
uvicorn main:app --reload
🌐 Server runs at
http://127.0.0.1:8000
-
Navigate to the frontend directory:
cd frontend -
Install dependencies:
npm install
-
Create a
.envfile with the following content:VITE_API_URL=http://127.0.0.1:8000
-
Start the frontend dev server:
npm run dev
🌐 App will be available at
http://localhost:5173
📦 aura-ai
├── 📂 frontend
│ ├── 📄 App.jsx
│ ├── 📄 .env
│ ├── 📄 package.json
│ └── 📄 ...
├── 📂 backend
│ ├── 📄 main.py
│ ├── 📄 requirements.txt
│ └── 📄 ...
└── 📄 README.md
| Accepts | Multipart image file |
| Returns | JSON with AI-generated caption |
| Content-Type | multipart/form-data |
Example Response:
{
"caption": "a person standing in a field with mountains in the background"
}VITE_API_URL=http://127.0.0.1:8000Note: For production deployment, replace with your actual backend URL
- Start both backend and frontend servers
- Open your browser and navigate to
http://localhost:5173 - Upload an image using the file input
- Wait for AI processing - caption will be generated automatically
- Copy the caption using the copy button
- Deploy to Vercel, Netlify, or similar platforms
- Update
VITE_API_URLin environment variables
- Deploy to Hugging Face Spaces, Railway, Heroku, or similar platforms
- Ensure all dependencies are listed in
requirements.txt
- 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 MIT License - see the LICENSE file for details.
Made with ❤️ using React & FastAPI