Generate beautiful, minimalist icons for your GitHub repositories using AI.
- 🎨 Generate minimalist, modern icons for GitHub repositories
- 🤖 Powered by Tongyi AI for intelligent prompt generation
- 🔄 Automatic analysis of repository content and purpose
- 🎯 Language-specific design elements
- ⚡ Fast and responsive interface
- 🌐 Simple URL-based generation
- Frontend: React + TypeScript + Vite + TailwindCSS
- Backend: FastAPI + Python
- AI: Tongyi API (Text Generation + Image Generation)
- Node.js 16+
- Python 3.9+
- Tongyi API Key
- Clone the repository:
git clone https://github.com/SimonGino/repoicon.git
cd repoicon
- Install frontend dependencies:
npm install
- Install backend dependencies:
cd backend
pdm install
- Configure environment variables:
# In backend/.env
TONGYI_API_KEY=your_api_key_here
- Start the backend server:
cd backend
pdm run start
- Start the frontend development server:
npm run dev
The application will be available at http://localhost:5173
- Visit the application in your browser
- Enter a GitHub repository URL
- Click "Generate Icon"
- Wait for the AI to analyze the repository and generate an icon
- Download the generated icon
-
Install Docker and Docker Compose on your system
-
Clone the repository:
git clone https://github.com/SimonGino/repoicon.git
cd repoicon
- Create a
.env
file in the root directory (you can copy from .env.example):
cp .env.example .env
- Configure your environment variables in
.env
:
# Required
TONGYI_API_KEY=your_api_key_here
# Optional - change these if the default ports are in use
API_HOST=localhost
BACKEND_PORT=8000
FRONTEND_PORT=5173
- Build and start the containers:
docker-compose up --build
The application will be available at:
- Frontend:
http://localhost:{FRONTEND_PORT}
(default: 5173) - Backend:
http://localhost:{BACKEND_PORT}
(default: 8000)
To use different ports, simply change the values in your .env
file.
To stop the containers:
docker-compose down
Contributions are welcome! Please feel free to submit a Pull Request.
This project is licensed under the MIT License - see the LICENSE file for details.