docto41 commited on
Commit
e7f8cf6
·
verified ·
1 Parent(s): b653499

Add 3 files

Browse files
Files changed (3) hide show
  1. README.md +6 -4
  2. index.html +326 -19
  3. prompts.txt +6 -0
README.md CHANGED
@@ -1,10 +1,12 @@
1
  ---
2
- title: Cin Verse
3
- emoji: 📉
4
- colorFrom: red
5
  colorTo: pink
6
  sdk: static
7
  pinned: false
 
 
8
  ---
9
 
10
- Check out the configuration reference at https://huggingface.co/docs/hub/spaces-config-reference
 
1
  ---
2
+ title: cin-verse
3
+ emoji: 🐳
4
+ colorFrom: pink
5
  colorTo: pink
6
  sdk: static
7
  pinned: false
8
+ tags:
9
+ - deepsite
10
  ---
11
 
12
+ Check out the configuration reference at https://huggingface.co/docs/hub/spaces-config-reference
index.html CHANGED
@@ -1,19 +1,326 @@
1
- <!doctype html>
2
- <html>
3
- <head>
4
- <meta charset="utf-8" />
5
- <meta name="viewport" content="width=device-width" />
6
- <title>My static Space</title>
7
- <link rel="stylesheet" href="style.css" />
8
- </head>
9
- <body>
10
- <div class="card">
11
- <h1>Welcome to your static Space!</h1>
12
- <p>You can modify this app directly by editing <i>index.html</i> in the Files and versions tab.</p>
13
- <p>
14
- Also don't forget to check the
15
- <a href="https://huggingface.co/docs/hub/spaces" target="_blank">Spaces documentation</a>.
16
- </p>
17
- </div>
18
- </body>
19
- </html>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <!DOCTYPE html>
2
+ <html lang="fr">
3
+ <head>
4
+ <meta charset="UTF-8">
5
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
+ <title>CinéVerse - Films populaires</title>
7
+ <script src="https://cdn.tailwindcss.com"></script>
8
+ <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css">
9
+ <style>
10
+ .movie-card {
11
+ transition: transform 0.3s ease, box-shadow 0.3s ease;
12
+ }
13
+ .movie-card:hover {
14
+ transform: scale(1.05);
15
+ box-shadow: 0 10px 25px rgba(220, 38, 38, 0.3);
16
+ }
17
+ .scroll-container {
18
+ height: calc(100vh - 200px);
19
+ overflow-y: auto;
20
+ }
21
+ .scroll-container::-webkit-scrollbar {
22
+ width: 8px;
23
+ }
24
+ .scroll-container::-webkit-scrollbar-track {
25
+ background: #1a202c;
26
+ }
27
+ .scroll-container::-webkit-scrollbar-thumb {
28
+ background: #e53e3e;
29
+ border-radius: 4px;
30
+ }
31
+ .loading-spinner {
32
+ animation: spin 1s linear infinite;
33
+ }
34
+ @keyframes spin {
35
+ 0% { transform: rotate(0deg); }
36
+ 100% { transform: rotate(360deg); }
37
+ }
38
+ </style>
39
+ </head>
40
+ <body class="bg-gray-900 text-white">
41
+ <header class="bg-black py-6 shadow-lg sticky top-0 z-50">
42
+ <div class="container mx-auto px-4">
43
+ <div class="flex flex-col md:flex-row justify-between items-center space-y-4 md:space-y-0">
44
+ <div class="flex items-center space-x-2">
45
+ <i class="fas fa-film text-3xl text-red-500"></i>
46
+ <h1 class="text-2xl font-bold">CinéVerse</h1>
47
+ </div>
48
+ <div class="relative w-full md:w-1/3">
49
+ <input type="text" id="searchInput" placeholder="Rechercher un film..." class="w-full bg-gray-800 rounded-full py-2 px-4 text-white focus:outline-none focus:ring-2 focus:ring-red-500">
50
+ <button id="searchButton" class="absolute right-3 top-2 text-gray-400 hover:text-white">
51
+ <i class="fas fa-search"></i>
52
+ </button>
53
+ </div>
54
+ <div class="flex space-x-4">
55
+ <button class="bg-red-600 hover:bg-red-700 px-4 py-2 rounded-md font-medium">
56
+ <i class="fas fa-user mr-2"></i>Connexion
57
+ </button>
58
+ </div>
59
+ </div>
60
+ </div>
61
+ </header>
62
+
63
+ <main class="container mx-auto px-4 py-8">
64
+ <div class="flex flex-col md:flex-row justify-between items-start md:items-center mb-8 space-y-4 md:space-y-0">
65
+ <h2 class="text-2xl font-bold" id="sectionTitle">Films populaires</h2>
66
+ <div class="flex flex-wrap gap-2">
67
+ <button class="genre-btn bg-red-600 hover:bg-red-700 px-4 py-2 rounded-md" data-id="28">Action</button>
68
+ <button class="genre-btn bg-red-600 hover:bg-red-700 px-4 py-2 rounded-md" data-id="35">Comédie</button>
69
+ <button class="genre-btn bg-red-600 hover:bg-red-700 px-4 py-2 rounded-md" data-id="18">Drame</button>
70
+ <button class="genre-btn bg-red-600 hover:bg-red-700 px-4 py-2 rounded-md" data-id="27">Horreur</button>
71
+ <button class="genre-btn bg-red-600 hover:bg-red-700 px-4 py-2 rounded-md" data-id="10749">Romance</button>
72
+ </div>
73
+ </div>
74
+
75
+ <div id="loading" class="flex justify-center items-center py-20">
76
+ <i class="fas fa-spinner loading-spinner text-4xl text-red-500"></i>
77
+ </div>
78
+
79
+ <div class="scroll-container hidden" id="moviesContainer">
80
+ <div id="moviesGrid" class="grid grid-cols-2 sm:grid-cols-3 md:grid-cols-4 lg:grid-cols-5 xl:grid-cols-6 gap-6">
81
+ <!-- Les films seront chargés ici via JavaScript -->
82
+ </div>
83
+ <div class="flex justify-center mt-8 mb-4">
84
+ <button id="loadMore" class="bg-red-600 hover:bg-red-700 px-6 py-3 rounded-md font-medium hidden">
85
+ Charger plus de films
86
+ </button>
87
+ </div>
88
+ </div>
89
+ </main>
90
+
91
+ <footer class="bg-black py-8 mt-12">
92
+ <div class="container mx-auto px-4">
93
+ <div class="grid grid-cols-1 md:grid-cols-4 gap-8">
94
+ <div>
95
+ <h3 class="text-xl font-bold mb-4">CinéVerse</h3>
96
+ <p class="text-gray-400">Votre destination pour découvrir les meilleurs films et où les regarder légalement.</p>
97
+ </div>
98
+ <div>
99
+ <h4 class="text-lg font-semibold mb-4">Liens utiles</h4>
100
+ <ul class="space-y-2 text-gray-400">
101
+ <li><a href="#" class="hover:text-red-500">À propos</a></li>
102
+ <li><a href="#" class="hover:text-red-500">Contact</a></li>
103
+ <li><a href="#" class="hover:text-red-500">Politique de confidentialité</a></li>
104
+ </ul>
105
+ </div>
106
+ <div>
107
+ <h4 class="text-lg font-semibold mb-4">Plateformes</h4>
108
+ <ul class="space-y-2 text-gray-400">
109
+ <li><a href="https://www.netflix.com" target="_blank" class="hover:text-red-500">Netflix</a></li>
110
+ <li><a href="https://www.primevideo.com" target="_blank" class="hover:text-red-500">Amazon Prime</a></li>
111
+ <li><a href="https://www.disneyplus.com" target="_blank" class="hover:text-red-500">Disney+</a></li>
112
+ </ul>
113
+ </div>
114
+ <div>
115
+ <h4 class="text-lg font-semibold mb-4">Réseaux sociaux</h4>
116
+ <div class="flex space-x-4">
117
+ <a href="#" class="text-gray-400 hover:text-red-500 text-xl"><i class="fab fa-facebook"></i></a>
118
+ <a href="#" class="text-gray-400 hover:text-red-500 text-xl"><i class="fab fa-twitter"></i></a>
119
+ <a href="#" class="text-gray-400 hover:text-red-500 text-xl"><i class="fab fa-instagram"></i></a>
120
+ </div>
121
+ </div>
122
+ </div>
123
+ <div class="border-t border-gray-800 mt-8 pt-6 text-center text-gray-400">
124
+ <p>Ce site utilise l'API TMDB mais n'est pas affilié à TMDB.</p>
125
+ <p class="mt-2">Les films présentés sont protégés par des droits d'auteur.</p>
126
+ </div>
127
+ </div>
128
+ </footer>
129
+
130
+ <script>
131
+ // Configuration de base
132
+ const API_KEY = '3fd2be6f0c70a2a598f084ddfb75487c'; // Clé API TMDB publique pour démo
133
+ const BASE_URL = 'https://api.themoviedb.org/3';
134
+ const IMAGE_BASE_URL = 'https://image.tmdb.org/t/p/w500';
135
+ const FRENCH_LANGUAGE = 'fr-FR';
136
+
137
+ let currentPage = 1;
138
+ let currentGenre = '';
139
+ let currentSearch = '';
140
+
141
+ document.addEventListener('DOMContentLoaded', function() {
142
+ // Éléments du DOM
143
+ const moviesGrid = document.getElementById('moviesGrid');
144
+ const loadingElement = document.getElementById('loading');
145
+ const moviesContainer = document.getElementById('moviesContainer');
146
+ const loadMoreButton = document.getElementById('loadMore');
147
+ const searchInput = document.getElementById('searchInput');
148
+ const searchButton = document.getElementById('searchButton');
149
+ const sectionTitle = document.getElementById('sectionTitle');
150
+ const genreButtons = document.querySelectorAll('.genre-btn');
151
+
152
+ // Charger les films populaires au démarrage
153
+ fetchPopularMovies();
154
+
155
+ // Écouteurs d'événements
156
+ loadMoreButton.addEventListener('click', loadMoreMovies);
157
+ searchButton.addEventListener('click', searchMovies);
158
+ searchInput.addEventListener('keypress', function(e) {
159
+ if (e.key === 'Enter') searchMovies();
160
+ });
161
+
162
+ // Écouteurs pour les boutons de genre
163
+ genreButtons.forEach(button => {
164
+ button.addEventListener('click', function() {
165
+ currentGenre = this.dataset.id;
166
+ currentSearch = '';
167
+ currentPage = 1;
168
+ sectionTitle.textContent = this.textContent;
169
+ fetchMoviesByGenre(currentGenre);
170
+ });
171
+ });
172
+
173
+ // Fonction pour charger les films populaires
174
+ async function fetchPopularMovies() {
175
+ try {
176
+ const response = await fetch(`${BASE_URL}/movie/popular?api_key=${API_KEY}&language=${FRENCH_LANGUAGE}&page=${currentPage}`);
177
+ const data = await response.json();
178
+ displayMovies(data.results);
179
+ } catch (error) {
180
+ console.error('Erreur:', error);
181
+ loadingElement.innerHTML = '<p class="text-red-500">Erreur lors du chargement des films. Veuillez réessayer.</p>';
182
+ }
183
+ }
184
+
185
+ // Fonction pour charger les films par genre
186
+ async function fetchMoviesByGenre(genreId) {
187
+ try {
188
+ loadingElement.classList.remove('hidden');
189
+ moviesContainer.classList.add('hidden');
190
+ loadMoreButton.classList.add('hidden');
191
+ moviesGrid.innerHTML = '';
192
+
193
+ const response = await fetch(`${BASE_URL}/discover/movie?api_key=${API_KEY}&language=${FRENCH_LANGUAGE}&sort_by=popularity.desc&page=${currentPage}&with_genres=${genreId}`);
194
+ const data = await response.json();
195
+ displayMovies(data.results);
196
+ } catch (error) {
197
+ console.error('Erreur:', error);
198
+ loadingElement.innerHTML = '<p class="text-red-500">Erreur lors du chargement des films. Veuillez réessayer.</p>';
199
+ }
200
+ }
201
+
202
+ // Fonction pour rechercher des films
203
+ async function searchMovies() {
204
+ const query = searchInput.value.trim();
205
+ if (query === '') return;
206
+
207
+ currentSearch = query;
208
+ currentGenre = '';
209
+ currentPage = 1;
210
+ sectionTitle.textContent = `Résultats pour "${query}"`;
211
+
212
+ try {
213
+ loadingElement.classList.remove('hidden');
214
+ moviesContainer.classList.add('hidden');
215
+ loadMoreButton.classList.add('hidden');
216
+ moviesGrid.innerHTML = '';
217
+
218
+ const response = await fetch(`${BASE_URL}/search/movie?api_key=${API_KEY}&language=${FRENCH_LANGUAGE}&query=${encodeURIComponent(query)}&page=${currentPage}`);
219
+ const data = await response.json();
220
+ displayMovies(data.results);
221
+ } catch (error) {
222
+ console.error('Erreur:', error);
223
+ loadingElement.innerHTML = '<p class="text-red-500">Erreur lors de la recherche. Veuillez réessayer.</p>';
224
+ }
225
+ }
226
+
227
+ // Fonction pour charger plus de films
228
+ async function loadMoreMovies() {
229
+ currentPage++;
230
+ try {
231
+ loadMoreButton.disabled = true;
232
+ loadMoreButton.innerHTML = '<i class="fas fa-spinner loading-spinner mr-2"></i> Chargement...';
233
+
234
+ let response;
235
+ if (currentSearch) {
236
+ response = await fetch(`${BASE_URL}/search/movie?api_key=${API_KEY}&language=${FRENCH_LANGUAGE}&query=${encodeURIComponent(currentSearch)}&page=${currentPage}`);
237
+ } else if (currentGenre) {
238
+ response = await fetch(`${BASE_URL}/discover/movie?api_key=${API_KEY}&language=${FRENCH_LANGUAGE}&sort_by=popularity.desc&page=${currentPage}&with_genres=${currentGenre}`);
239
+ } else {
240
+ response = await fetch(`${BASE_URL}/movie/popular?api_key=${API_KEY}&language=${FRENCH_LANGUAGE}&page=${currentPage}`);
241
+ }
242
+
243
+ const data = await response.json();
244
+ appendMovies(data.results);
245
+
246
+ loadMoreButton.disabled = false;
247
+ loadMoreButton.innerHTML = 'Charger plus de films';
248
+ } catch (error) {
249
+ console.error('Erreur:', error);
250
+ loadMoreButton.innerHTML = 'Erreur - Réessayer';
251
+ }
252
+ }
253
+
254
+ // Fonction pour afficher les films
255
+ function displayMovies(movies) {
256
+ if (movies.length === 0) {
257
+ loadingElement.innerHTML = '<p class="text-red-500">Aucun film trouvé.</p>';
258
+ return;
259
+ }
260
+
261
+ moviesGrid.innerHTML = '';
262
+ appendMovies(movies);
263
+
264
+ loadingElement.classList.add('hidden');
265
+ moviesContainer.classList.remove('hidden');
266
+
267
+ if (movies.length >= 20) {
268
+ loadMoreButton.classList.remove('hidden');
269
+ } else {
270
+ loadMoreButton.classList.add('hidden');
271
+ }
272
+ }
273
+
274
+ // Fonction pour ajouter des films à la grille
275
+ function appendMovies(movies) {
276
+ movies.forEach(movie => {
277
+ const movieCard = document.createElement('div');
278
+ movieCard.className = 'movie-card bg-gray-800 rounded-lg overflow-hidden cursor-pointer';
279
+
280
+ // Vérifier si le film a une affiche
281
+ const posterPath = movie.poster_path ?
282
+ `${IMAGE_BASE_URL}${movie.poster_path}` :
283
+ 'https://via.placeholder.com/500x750?text=Affiche+non+disponible';
284
+
285
+ // Formater la date de sortie
286
+ const releaseDate = movie.release_date ?
287
+ new Date(movie.release_date).getFullYear() :
288
+ 'Date inconnue';
289
+
290
+ // Créer la carte de film
291
+ movieCard.innerHTML = `
292
+ <div onclick="showMovieDetails(${movie.id})">
293
+ <img src="${posterPath}" alt="${movie.title}" class="w-full h-64 sm:h-80 object-cover">
294
+ <div class="p-4">
295
+ <h3 class="font-bold truncate">${movie.title}</h3>
296
+ <div class="flex justify-between items-center mt-2 text-sm text-gray-400">
297
+ <span>${releaseDate}</span>
298
+ <span class="flex items-center">
299
+ <i class="fas fa-star text-yellow-400 mr-1"></i>
300
+ ${movie.vote_average ? movie.vote_average.toFixed(1) : 'N/A'}
301
+ </span>
302
+ </div>
303
+ </div>
304
+ </div>
305
+ `;
306
+ moviesGrid.appendChild(movieCard);
307
+ });
308
+ }
309
+ });
310
+
311
+ // Fonction pour afficher les détails du film (ouvre une nouvelle fenêtre avec les plateformes disponibles)
312
+ function showMovieDetails(movieId) {
313
+ // Dans une application réelle, vous utiliseriez l'API "watch providers" de TMDB
314
+ // pour trouver où regarder le film légalement
315
+
316
+ // Pour cet exemple, nous ouvrons simplement la page TMDB du film
317
+ window.open(`https://www.themoviedb.org/movie/${movieId}?language=fr`, '_blank');
318
+
319
+ // Pour un site complet, vous pourriez créer une modale avec :
320
+ // - Les détails du film
321
+ // - Les plateformes de streaming disponibles
322
+ // - Les options de location/achat
323
+ }
324
+ </script>
325
+ <p style="border-radius: 8px; text-align: center; font-size: 12px; color: #fff; margin-top: 16px;position: fixed; left: 8px; bottom: 8px; z-index: 10; background: rgba(0, 0, 0, 0.8); padding: 4px 8px;">Made with <img src="https://enzostvs-deepsite.hf.space/logo.svg" alt="DeepSite Logo" style="width: 16px; height: 16px; vertical-align: middle;display:inline-block;margin-right:3px;filter:brightness(0) invert(1);"><a href="https://enzostvs-deepsite.hf.space" style="color: #fff;text-decoration: underline;" target="_blank" >DeepSite</a> - 🧬 <a href="https://enzostvs-deepsite.hf.space?remix=docto41/cin-verse" style="color: #fff;text-decoration: underline;" target="_blank" >Remix</a></p></body>
326
+ </html>
prompts.txt ADDED
@@ -0,0 +1,6 @@
 
 
 
 
 
 
 
1
+ creer un site de marketplace composer de 986200 bouton d'assisat IA TRES puissant avec des vrais bouton reel et actif pas des bouton d'exemple je veux un vrais site avec des bouton reel : ajouter bouton paypal , stripe , avec mes information pour etre payer , ajouter panier d'achat , obligatio de sabonner pour utiliser le site gratuitement ajouter tableau de bord avec les information de paiement paypal, stripe, avec bouton stripe ,bouton paypal etc.. plus panier d'achat pour les information de paiement pour recevoir mes paiement
2
+ je veux creer le plis imense marketp ajouter bouton paypal , stripe , avec mes information pour etre payer , ajouter panier d'achat , obligatio de sabonner pour utiliser le site gratuitement ajouter tableau de bord avec les information de paiement paypal, stripe, avec bouton stripe ,bouton paypal etc.. plus panier d'achat pour les information de paiement pour recevoir mes paement je veux acces et toute produit pour moi seul les autre devront payer un abonnement : [email protected] : Admin270574@ et [email protected] : Admin270574@ lace au monde de plus de 9790078 bouton cliquable automatique ouvrir chaque bouton cliquéé dans une nouvel fenetre je veux des vrai bouton et des site reel pas d 'exemple
3
+ je veux creer le plus gigantesque marché de INTELIGENCES ARTIFICIEL AVEC PLUS DE 990099 BOUTONS D ASSISANT IA dans toutes les domaine de services, je veux q'uon affiche toutes les boutons directement et que chaque boutons cliqué s'ouvre dans une nouvel fenetre je veux que toi soit gré en automatique et aussi ,: je veux un tableau de bord gigantesque ajouter bouton paypal , stripe , avec mes information pour etre payer , ajouter panier d'achat , obligatio de sabonner pour utiliser le site gratuitement ajouter tableau de bord avec les information de paiement paypal, stripe, avec bouton stripe ,bouton paypal etc.. plus panier d'achat pour les information de paiement pour recevoir mes paement je veux acces et toute produit pour moi seul les autre devront payer un abonnement : [email protected] : Admin270574@ et [email protected] : Admin270574@
4
+ ajouter bouton paypal , stripe , avec mes information pour etre payer , ajouter panier d'achat , obligatio de sabonner pour utiliser le site gratuitement ajouter tableau de bord avec les information de paiement paypal, stripe, avec bouton stripe ,bouton paypal etc.. plus panier d'achat pour les information de paiement pour recevoir mes paement je veux acces et toute produit pour moi seul les autre devront payer un abonnement : [email protected] : Admin270574@ et [email protected] : Admin270574@
5
+ creer un générateur de site de films streaming a regarder de suite avec plus de 5025200 boutons cliquable automatiques des film qui s'ouvre dans une nouvel fenetre quand on cique sure chaque bouton je veux des vrais film reel en automatique pas de site d exemple , avec sont propre database de plus de 9726000 film complet directement pret a l'emploi les film je les veux tous en francais , avec des tres belle affiche reel des film et leur affiche d'origine , avec des serveurs de base de donnée avec leur lien d'origine
6
+ je veux que le site posséde sont vrais serveur de lient de film a jours