# 🔍 Emoji Sucher Eine moderne Web-Anwendung zum Suchen und Kopieren von Emojis mit Docker-Unterstützung. ## ✨ Features - **Emoji-Suche**: Suche nach Emojis über Namen oder Beschreibungen - **Große Emoji-Darstellung**: Emojis werden groß und übersichtlich angezeigt - **Clipboard-Integration**: Ein-Klick-Kopieren von Emojis in die Zwischenablage - **Responsive Design**: Funktioniert auf Desktop und mobilen Geräten - **Docker-Support**: Einfache Bereitstellung mit Docker ## 🚀 Installation und Start ### Mit Docker (Empfohlen) 1. **Repository klonen oder Dateien herunterladen** 2. **Mit Docker Compose starten:** ```bash docker-compose up --build ``` 3. **Oder mit Docker direkt:** ```bash docker build -t emoji-searcher . docker run -p 5000:5000 emoji-searcher ``` 4. **Anwendung öffnen:** Öffne deinen Browser und gehe zu `http://localhost:5000` ### Lokale Entwicklung 1. **Python 3.11+ installieren** 2. **Virtuelle Umgebung erstellen:** ```bash python -m venv .venv source .venv/bin/activate # Linux/Mac # oder .venv\Scripts\activate # Windows ``` 3. **Abhängigkeiten installieren:** ```bash pip install -r requirements.txt ``` 4. **Anwendung starten:** ```bash python app.py ``` 5. **Anwendung öffnen:** Öffne deinen Browser und gehe zu `http://localhost:5000` ## 🎯 Verwendung 1. **Emoji suchen**: Gib einen Suchbegriff in das Suchfeld ein (z.B. "smile", "herz", "katze", "lachen") 2. **Emoji kopieren**: Klicke auf den "📋 Kopieren" Button oder direkt auf die Emoji-Karte 3. **Unicode anzeigen**: Jedes Emoji zeigt seinen Unicode-Wert (z.B. U+1F600) ### 🌍 Mehrsprachige Suche Die App unterstützt sowohl englische als auch deutsche Suchbegriffe: - **Englisch**: "smile", "heart", "cat", "laugh" - **Deutsch**: "lachen", "herz", "katze", "freude" ## 🛠️ Technische Details ### Backend - **Flask**: Web-Framework - **emoji**: Python-Bibliothek für Emoji-Daten - **RESTful API**: Such-Endpoint unter `/search` ### Frontend - **Vanilla JavaScript**: Keine externen Frameworks - **Modern CSS**: Responsive Design mit CSS Grid - **Clipboard API**: Moderne Browser-API für Kopieren ### Docker - **Python 3.11**: Basis-Image - **Multi-stage Build**: Optimiert für Produktion - **Port 5000**: Standard Flask-Port ## 📁 Projektstruktur ``` emojilist/ ├── app.py # Flask-Anwendung ├── requirements.txt # Python-Abhängigkeiten ├── Dockerfile # Docker-Konfiguration ├── docker-compose.yml # Docker Compose ├── .dockerignore # Docker Ignore-Datei ├── templates/ │ └── index.html # Frontend-Template └── README.md # Dokumentation ``` ## 🔧 Konfiguration ### Umgebungsvariablen - `FLASK_ENV`: Setze auf `production` für Produktionsumgebung - `FLASK_APP`: Standardmäßig `app.py` ### Port-Konfiguration Standardmäßig läuft die Anwendung auf Port 5000. Du kannst den Port in der `docker-compose.yml` oder beim Docker-Run-Befehl ändern. ## 🐛 Fehlerbehebung ### Häufige Probleme 1. **Port bereits belegt:** ```bash # Anderen Port verwenden docker run -p 8080:5000 emoji-searcher ``` 2. **Docker Build fehlschlägt:** ```bash # Cache leeren und neu bauen docker-compose build --no-cache ``` 3. **Clipboard funktioniert nicht:** - Stelle sicher, dass du HTTPS verwendest (für Clipboard API) - Fallback für ältere Browser ist implementiert ## 📝 API-Endpunkte - `GET /`: Hauptseite - `GET /search?q=`: Emoji-Suche - `GET /api/emojis`: Alle verfügbaren Emojis (Debug) ## 🤝 Beitragen 1. Fork das Repository 2. Erstelle einen Feature-Branch 3. Committe deine Änderungen 4. Push zum Branch 5. Erstelle einen Pull Request ## 📄 Lizenz Dieses Projekt steht unter der MIT-Lizenz. ## 🙏 Danksagungen - [emoji](https://github.com/carpedm20/emoji) - Python Emoji-Bibliothek - [Flask](https://flask.palletsprojects.com/) - Web-Framework - [Docker](https://www.docker.com/) - Container-Plattform