Sketch Maker Ai
Une application Web sophistiquée qui exploite plusieurs fournisseurs et modèles d'IA pour générer des illustrations, des bannières et du contenu visuel personnalisé à partir de descriptions de texte. Les fonctionnalités incluent une formation de modèle personnalisée, un support de format multiples et un système de galerie complet.
Caractéristiques de base
Prise en charge de l'IA multiprovide
- OpenAI: modèles de langue avancée pour une amélioration rapide
- Anthropic: modèles de langue de pointe avec des capacités Claude
- Google Gemini: IA de nouvelle génération avec compréhension multimodale
- GROQ: inférence haute performance avec la latence ultra-low
Génération de bannières
- Création de bannières SVG avec contrôle précis
- Presets de style multiple (moderne, minimaliste, artistique, d'entreprise, ludique, technologique, élégant)
- Alignement et positionnement du texte dynamique
- Viewbox automatique et manipulation de la préservation
- Support aux gradients, modèles et effets
Génération d'images (intégration FAL)
- Flux Pro: génération d'images standard de haute qualité
- Flux Pro Ultra: Génération avancée avec contrôle du rapport d'aspect
- Flux Lora: support de formation sur le modèle personnalisé
- Flux Dev: Environnement de développement et de test
- Réalisme de flux: génération photoréaliste améliorée
- Recraft V3: Contrôle de style avancé avec personnalisation des couleurs
Formation du modèle personnalisé
- Prise en charge des images de formation 5-20
- Génération automatique du masque
- Suivi des progrès de la formation en temps réel
- Intégration Webhook pour les mises à jour de statut
- Gestion de l'histoire de la formation
- Accès facile aux fichiers de modèle formés
- Déclencher la gestion des mots
Gestion de la galerie et des actifs
- Galeries d'images personnelles
- Prise en charge du format multiple (Webp, PNG, JPEG)
- Conversion de format automatique
- Système de téléchargement sécurisé
- Suivi des métadonnées d'image
- Histoire de la création
Sécurité avancée
- Contrôle d'accès basé sur les rôles (utilisateur / admin / superadmin)
- Gestion des clés de l'API sécurisée
- Protection limitant les taux
- Privilèges de Superadmin du premier utilisateur
- Gestion des comptes d'utilisateurs
- Surveillance des activités
Système d'authentification
- Méthodes d'authentification multiples:
- Authentification de nom d'utilisateur / mot de passe régulier
- Intégration Google Oauth
- Contrôles d'authentification configurables
- Contrôles d'authentification de l'administrateur:
- Activer / désactiver l'authentification régulière
- Activer / désactiver l'authentification Google
- Configurer Google OAuth les informations d'identification
- Gérer les paramètres d'authentification via l'interface d'administration
- Fonctionnalités Google OAuth:
- Implémentation Secure OAuth 2.0
- Création automatique du compte pour les nouveaux utilisateurs de Google
- Lien de compte pour les utilisateurs existants
- Synchronisation des informations du profil
- Manipulation sécurisée de rappel
- Sécurité d'authentification:
- Exigences de force du mot de passe
- Hachage de mot de passe sécurisé
- Limiter le taux aux tentatives de connexion
- Gestion de session
- Options de récupération du compte
Système de messagerie
- Prise en charge de SMTP et d'Amazon SES
- Modèles d'e-mail HTML
- Email de bienvenue pour les nouveaux utilisateurs
- Fonctionnalité de réinitialisation de mot de passe avec OTP
- Tester la fonctionnalité e-mail
- Suivi de l'état du service de messagerie
Gestion des utilisateurs
- Enregistrement des utilisateurs avec système d'approbation
- Gestion des rôles (utilisateur / admin / superadmin)
- Contrôle de l'état du compte
- Réinitialisation du mot de passe avec vérification de l'e-mail
- Fonctionnalité de recherche d'utilisateurs
- Gestion des utilisateurs en vrac
Pile technologique
Backend
- Python 3.12+
- Framework Web Flask
- SQLALCHEMY ORM
- Login de flacon pour l'authentification
- Limiteur de flacon pour la limitation du taux
- Boto3 pour les services AWS
- SDK du fournisseur d'IA multiple
L'extrémité avant
- HTML5 / CSS3
- Javascript (es6 +)
- Composants de Daisyui
- CSS du vent arrière
- Animations GSAP
- Conception réactive
Base de données
- Sqlite (développement)
- PostgreSQL (PRODUCTION PRÊT)
Services de messagerie
- Support SMTP
- Amazon SES Intégration
- Modèles d'e-mail HTML
- Gestion de la file d'attente par e-mail
Sécurité
- Limitation des taux
- Hachage de mot de passe sécurisé
- Contrôle d'accès basé sur les rôles
- Gestion des clés de l'API
Outils de développement
- Environnement virtuel python
- Contrôle de la version GIT
- Intégration VScode
Installation
- Clone le référentiel:
git clone https://github.com/marketcalls/sketchmaker.git
cd sketchmaker
- Créer et activer l'environnement virtuel:
python -m venv venv
source venv/bin/activate # Windows: venvScriptsactivate
- Installez les dépendances:
pip install -r requirements.txt
- Initialiser la base de données:
flask shell
>>> from app import db
>>> db.create_all ()
>>> exit ()
- Exécutez l'application:
Configuration
Configuration d'authentification
Configurer les paramètres d'authentification dans l'interface d'administration (/ admin / manage / auth):
Authentification régulière
- Activer / désactiver l'authentification du nom d'utilisateur / mot de passe
- Configurer les exigences de mot de passe
- Gérer les paramètres d'enregistrement des utilisateurs
Configuration Google Oauth
- Aller à Google Cloud Console
- Créer un nouveau projet ou sélectionner un existant
- Configurer l'écran de consentement OAuth:
- Sélectionnez le type d'utilisateur "externe"
- Ajouter les informations de l'application requises
- Ajouter des lunettes: e-mail et profil
- Créer des informations d'identification OAuth:
- Créer un ID client OAuth
- Sélectionnez "Application Web"
- Ajouter des origines JavaScript autorisées:
http://localhost:5000 (development)
https://your-domain.com (production)
- Ajouter les uris de redirection autorisés:
http://localhost:5000/auth/google/callback (development)
https://your-domain.com/auth/google/callback (production)
- Copier l'ID client et le secret du client
- Configurer dans l'interface d'administration:
- Activer l'authentification Google
- Ajouter l'ID client Google
- Ajouter le secret du client Google
Clés API requises
Configurez-les dans les paramètres d'administration après la première connexion:
- Openai, anthropic, Google Gemini, clé API Groq (configurer n'importe qui)
- Clé API FAL
Configuration de l'e-mail
Configurez SMTP ou Amazon SES:
Paramètres SMTP
- Hôte SMTP
- Port SMTP
- Nom d'utilisateur SMTP
- Mot de passe SMTP
- Support TLS
Paramètres Amazon SES
- Clé d'accès AWS
- Clé secrète AWS
- Région AWS
Guide d'utilisation
Configuration initiale:
- Enregistrez le premier utilisateur (devient superadmin)
- Configurer les touches API dans les paramètres
- Configurer le service de messagerie
- Configurer les méthodes d'authentification
- Configurer Google Oauth (si nécessaire)
- Sélectionnez le fournisseur d'IA préféré
Génération de contenu:
- Créer des bannières avec des styles personnalisés
- Générer des images avec divers modèles
- Train Modèles personnalisés
- Gérer le contenu de la galerie
Fonctions d'administration:
- Gérer les utilisateurs et les rôles
- Configurer les paramètres de messagerie
- Configurer les paramètres d'authentification
- Surveiller les paramètres du système
- Suivre l'activité utilisateur
Contributif
- Fourchez le référentiel
- Créez votre branche de fonctionnalité (
git checkout -b feature/AmazingFeature ) - Commissez vos modifications (
git commit -m 'Add some AmazingFeature' ) - Push to the Branch (
git push origin feature/AmazingFeature ) - Ouvrir une demande de traction
Licence
Ce projet est autorisé en vertu de la licence AGPL V3.0 - voir le fichier de licence pour plus de détails.
Auteur
prolongations
Crédits
Icônes et images
- FAVICON AND LOGO: Icônes Sketch Book créées par RA_IC0N21 - FLATICON