InstAI est une plateforme de réseau social moderne dédiée aux images générées par intelligence artificielle. Inspirée par Instagram, elle permet aux utilisateurs de créer, partager et découvrir des créations artistiques uniques générées par IA.
- 🎨 Génération d'images IA : Créez des images uniques à partir de prompts textuels
- 🔄 Fil d'actualité infini : Découvrez en continu les créations de la communauté
- 💬 Interactions sociales : Likez, commentez et partagez vos créations favorites
- 👥 Système de followers : Suivez vos créateurs préférés
- 🔐 Authentification OAuth : Connexion sécurisée via GitHub ou Google
- ✅ Authentification OAuth 2.0 (GitHub & Google)
- ✅ Génération d'images IA via l'API Pollination
- ✅ Publication de créations avec hébergement automatique
- ✅ Fil d'actualité personnalisé avec infinite scroll
- ✅ Système de likes sur les publications
- ✅ Commentaires et interactions
- ✅ Profils utilisateurs personnalisables
- ✅ Système de follow/unfollow
- ✅ Recherche d'utilisateurs
- 🎨 Interface responsive (mobile-first)
- ⚡ Performance optimisée avec Vue 3 Composition API
- 🎭 Animations fluides avec GSAP
- 🎯 TypeScript pour le frontend
- 🔒 Sessions sécurisées côté serveur
- 📦 Architecture modulaire
| Technologie | Version | Description |
|---|---|---|
| Vue.js | 3.5.24 | Framework JavaScript progressif |
| TypeScript | 5.9.3 | Superset typé de JavaScript |
| Vue Router | 4.6.3 | Routage officiel pour Vue.js |
| Pinia | 3.0.4 | Store state management |
| TailwindCSS | 4.1.17 | Framework CSS utility-first |
| DaisyUI | 5.5.8 | Composants UI pour Tailwind |
| GSAP | 3.13.0 | Animations professionnelles |
| Vite | 7.2.4 | Build tool ultra-rapide |
| Technologie | Version | Description |
|---|---|---|
| Node.js | - | Runtime JavaScript |
| Express.js | 5.2.0 | Framework web minimaliste |
| MySQL | - | Base de données relationnelle |
| Passport.js | 0.7.0 | Authentification middleware |
| Express Session | 1.18.2 | Gestion des sessions |
- Pollination AI : Génération d'images par IA
- 8upload : Hébergement d'images
- GitHub OAuth : Authentification
- Google OAuth : Authentification
InstAI/
├── backend/
│ ├── src/
│ │ ├── config/
│ │ │ └── bd.js # Configuration MySQL
│ │ ├── controllers/
│ │ │ ├── image.controller.js # Gestion images IA
│ │ │ ├── publication.controller.js
│ │ │ └── user.controller.js # Gestion utilisateurs
│ │ ├── models/
│ │ │ └── user.js
│ │ └── index.js # Point d'entrée Express
│ ├── .env
│ └── package.json
│
├── frontend/
│ ├── src/
│ │ ├── components/ # Composants réutilisables
│ │ │ ├── accueilComponent/
│ │ │ ├── profileComponent/
│ │ │ ├── publicationComponent/
│ │ │ ├── appHeader.vue
│ │ │ ├── navBar.vue
│ │ │ └── userComponent.vue
│ │ ├── models/ # Modèles TypeScript
│ │ │ ├── user.ts
│ │ │ ├── publications.ts
│ │ │ └── comment.ts
│ │ ├── routes/ # Configuration router
│ │ │ └── index.ts
│ │ ├── service/ # Services API
│ │ │ ├── userService.ts
│ │ │ └── publicationService.ts
│ │ ├── stores/ # Pinia stores
│ │ │ └── userStores.ts
│ │ ├── vue/ # Pages Vue
│ │ │ ├── accueil.vue
│ │ │ ├── create-publication.vue
│ │ │ ├── profile.vue
│ │ │ ├── publication.vue
│ │ │ ├── search-users.vue
│ │ │ ├── followers.vue
│ │ │ ├── followed.vue
│ │ │ ├── login.vue
│ │ │ └── create-account.vue
│ │ ├── App.vue
│ │ ├── main.ts
│ │ └── style.css
│ ├── vite.config.ts
│ ├── tsconfig.json
│ └── package.json
│
├── BDD/
│ └── bdd.sql # Schéma de base de données
│
├── .gitignore
└── readme.md
- Les images générées peuvent prendre quelques secondes
- Limite de taux de l'API Pollination
Ce projet est sous licence MIT. Voir le fichier LICENSE pour plus de détails.
- Adrien_mttn - Développeur principal - @adrien_mttn
- Pollination AI pour l'API de génération d'images
- PostImg pour l'hébergement d'images
- La communauté Vue.js et Express.js
- Tous les contributeurs du projet

