/** Cartes projet (page Projets) : titre, compétences, visuel, texte, lien externe. */
export const PROJETS = [
  {
    id: 'androidpayload',
    title: 'androidpayload',
    skills: ['Linux', 'Bash', 'Java', 'Hardware'],
    imageSrc: 'https://picsum.photos/seed/pacmanc/640/360',
    imageAlt: 'Visuel du projet androidpayload',
    description:
      'Application pour récupérer tous les droits sur un appareil Android (ROOT).',
    link: 'https://github.com/topjohnwu/Magisk',
    linkLabel: 'Magisk sur GitHub',
  },
  {
    id: 'wikicyber',
    title: 'WIKICYBER',
    skills: ['Web', 'OSINT', 'Cybersécurité', 'Documentation'],
    imageSrc: '/images/wikicyber-preview.png',
    imageAlt: 'Aperçu du projet WIKICYBER',
    description:
      'Wiki informatique, réseau social anonyme WIKICYBER.\nSite web regroupant des outils informatiques / réseau social anonyme.\nCyber sécurité, OSINT, documentation…\nProjet perso — GitHub.',
    link: 'https://github.com/Foufure13/wiki.cyber',
    linkLabel: 'wiki.cyber sur GitHub',
  },
  {
    id: 'lk-find-post',
    title: 'LK-Find-Post',
    skills: ['Scraping', 'API', 'Base de données', 'Python'],
    imageSrc: '/images/lk-find-post-preview.png',
    imageAlt: 'Aperçu du projet LK-Find-Post',
    description:
      'Outil de scraping de posts et de filtrage pour récupérer un thème spécifique.\nEnvoi par API vers la base de données.\nProjet perso — GitHub.',
    link: 'https://github.com/Foufure13/Linkedin-find-post',
    linkLabel: 'Linkedin-find-post sur GitHub',
  },
  {
    id: 'rotmg-like',
    title: 'ROTMG-LIKE',
    skills: ['C#', 'Multijoueur', 'Jeu vidéo'],
    imageSrc: '/images/rotmglike-preview.png',
    imageAlt: 'Aperçu du jeu ROTMG-LIKE',
    description:
      'Jeu vidéo en C# multijoueur / solo.\nGraphisme et gameplay inspirés du jeu d’origine, avec les fonctionnalités de base : 1 type de classe, niveau max 20.\nStuff : arme, collier, armure, anneau — 4 types par catégorie.\n4 types d’ennemis : à leur mort, gain d’XP et 1 drop d’arme par ennemi.\nProjet scolaire personnel — GitHub.',
    link: 'https://github.com/Foufure13/ROTMG-LIKE-Csharp',
    linkLabel: 'ROTMG-LIKE sur GitHub',
  },
  {
    id: 'twitch-bot-interactif',
    title: 'Twitch Bot Interactif',
    skills: ['Twitch', 'API', 'STT', 'Bot'],
    imageSrc: '/images/twitch-bot-preview.png',
    imageAlt: 'Aperçu du bot Twitch',
    description:
      'Bot connecté au flux de chat et au streaming d’un live Twitch.\nFonctionnalité 1 : écouter le chat et répondre quand il est mentionné.\nFonctionnalité 2 : enregistrer les voix du flux, traduire en texte et interagir selon les détections.\nProjet personnel — GitHub.',
    link: 'https://github.com/Foufure13/twitchBot-intelligent',
    linkLabel: 'twitchBot-intelligent sur GitHub',
  },
  {
    id: 'billeterie-cinema',
    title: 'Billeterie cinéma',
    skills: ['Web', 'E-mail', 'Base de données'],
    imageSrc: '/images/billeterie-cinema-preview.png',
    imageAlt: 'Aperçu de la billetterie cinéma',
    description:
      'Site web de réservation de places avec choix du siège dans la salle.\nConfirmation par e-mail.\nProjet scolaire en groupe — GitHub.',
    link: 'https://github.com/Foufure13/Billetterie-en-ligne',
    linkLabel: 'Billetterie-en-ligne sur GitHub',
  },
  {
    id: 'realmaster',
    title: 'RealMaster',
    skills: ['Web', 'Social', 'Stats'],
    imageSrc: 'https://picsum.photos/seed/lkfindpost/640/360',
    imageAlt: 'Aperçu du projet RealMaster',
    description:
      'Réseau social sécurisé sur le thème du jeu vidéo ROTMG.\nOutils pour le jeu : prévisualisation avatar, statistiques stuff.\nProjet scolaire personnel — GitHub.',
    link: 'https://github.com/Foufure13/realmaster',
    linkLabel: 'realmaster sur GitHub',
  },
  {
    id: 'pacman-c',
    title: 'Pacman C',
    skills: ['C', 'Jeux vidéo', 'Procédural', 'Carte'],
    imageSrc: '/images/pacman-c-preview.png',
    imageAlt: 'Aperçu du Pacman en C',
    description:
      'Pacman codé en C avec modifications.\nGénération procédurale de la carte, choix de la taille de la carte.\nProjet scolaire personnel — GitHub.',
    link: 'https://github.com/Foufure13/Pacman_C',
    linkLabel: 'Pacman_C sur GitHub',
  },
  {
    id: 'airsoft-vitrine',
    title: 'Airsoft vitrine',
    skills: ['Web', 'Association', 'Vitrine'],
    imageSrc: '/images/airsoft-vitrine-preview.png',
    imageAlt: 'Aperçu du site Airsoft',
    description:
      'Site web créé pour une association.\nProjet personnel — GitHub.',
    link: 'https://github.com/Foufure13/Airsoft',
    linkLabel: 'Airsoft sur GitHub',
  },
  {
    id: 'cryptobot',
    title: 'CryptoBot',
    skills: ['API', 'Dashboard', 'Crypto', 'Trading'],
    imageSrc: '/images/cryptobot-preview.png',
    imageAlt: 'Aperçu du projet CryptoBot',
    description:
      'Outil complet de gestion de comptes crypto par API.\nSite web dashboard, sécurité compte / base de données.\nRécupération des flux marché (API), aide à la décision d’investissement, trading sur portefeuille (API).\nDépôt GitHub privé.',
    link: 'https://github.com/Foufure13',
    linkLabel: 'Profil GitHub (dépôt privé)',
  },
  {
    id: 'bot-instagram',
    title: 'Bot autonome Instagram',
    skills: ['Social', 'IA', 'API', 'Génération'],
    imageSrc: 'https://www.thispersondoesnotexist.com',
    imageAlt: 'Aperçu du bot Instagram',
    description:
      'Outils pour générer du contenu pour les réseaux sociaux et publier (yoloGenerator, Controler_prompt).\nGénération d’images générique dans un même style ou thème ; API pour communiquer avec un outil de génération d’image et l’administrer.\nProjet personnel — GitHub privé.',
    link: 'https://github.com/Foufure13',
    linkLabel: 'Profil GitHub (dépôt privé)',
  },
  {
    id: 'site-partage-info',
    title: 'Site web de partage d’information',
    skills: ['Web', 'Forum', 'Light'],
    imageSrc: '/images/site-partage-preview.png',
    imageAlt: 'Aperçu du site de partage',
    description:
      'Forum léger : possibilité d’ajouter du contenu pour tout utilisateur.\nProjet webjoke — GitHub privé.',
    link: 'https://github.com/Foufure13',
    linkLabel: 'Profil GitHub (dépôt privé)',
  },
  {
    id: 'mecafollow',
    title: 'mecaFollow',
    skills: ['Web', 'Suivi', 'E-mail'],
    imageSrc: '/images/mecafollow-preview.png',
    imageAlt: 'Aperçu du projet mecaFollow',
    description:
      'Site web personnel ou professionnel : enregistrement et suivi d’une voiture ou autre véhicule pour faciliter le suivi des entretiens (un ou plusieurs véhicules).\nNotifications par e-mail lorsqu’une intervention est nécessaire.\nProjet personnel et professionnel — GitHub sécurisé.',
    link: 'https://github.com/Foufure13',
    linkLabel: 'Profil GitHub (dépôt sécurisé)',
  },
  {
    id: 'clipautocs2',
    title: 'clipAutoCS2',
    skills: ['Vidéo', 'YouTube'],
    imageSrc: 'https://picsum.photos/seed/billeterie/640/360',
    imageAlt: 'Aperçu du projet clipAutoCS2',
    description:
      'Création de clips highlight pro sur CS2.\nRécupération d’un match e-sport et traitement des données.\nEnregistrement automatisé des meilleurs moments, montage vidéo, publication sur YouTube.\nProjet personnel — GitHub perso.',
    link: 'https://github.com/Foufure13',
    linkLabel: 'Profil GitHub',
  },
  {
    id: 'wiki-documentation',
    title: 'Wiki Documentation',
    skills: ['Documentation', 'Docker', 'BookStack', 'Web'],
    imageSrc: 'https://picsum.photos/seed/wiki-mira-ceti/640/360',
    imageAlt: 'Aperçu du wiki BookStack Mira-Ceti',
    description:
      'Documentation des services, configurations et modes d’utilisation pour serveurs et projets personnels ou professionnels.\nTechnologie : wiki BookStack, déployé avec Docker.\nInstance publique en lecture.',
    link: 'https://wiki.mira-ceti.ovh',
    linkLabel: 'wiki.mira-ceti.ovh',
  },
  {
    id: 'seafile',
    title: 'Seafile',
    skills: ['Docker', 'Stockage', 'Web', 'API'],
    imageSrc: 'https://picsum.photos/seed/seafile-stack/640/360',
    imageAlt: 'Aperçu du déploiement Seafile',
    description:
      'Synchronisation et partage de fichiers en auto-hébergement (clients desktop et mobile), espaces d’équipe et historique de versions.\nStack conteneurisée, intégration sauvegardes et accès contrôlé.\nProjet personnel / professionnel.',
    link: 'https://www.seafile.com/',
    linkLabel: 'Seafile — site officiel',
  },
  {
    id: 'gitea',
    title: 'Gitea',
    skills: ['Docker', 'Git', 'Web', 'API'],
    imageSrc: 'https://picsum.photos/seed/gitea-selfhosted/640/360',
    imageAlt: 'Aperçu du déploiement Gitea',
    description:
      'Forge Git légère : dépôts, issues, pull requests, actions CI.\nHébergement de code perso et projets internes derrière authentification.\nDéploiement Docker, sauvegardes et mise à jour documentés sur le wiki.',
    link: 'https://gitea.io/',
    linkLabel: 'Gitea — site officiel',
  },
  {
    id: 'immich',
    title: 'Immich',
    skills: ['Docker', 'Photos', 'Web', 'Stockage'],
    imageSrc: 'https://picsum.photos/seed/immich-gallery/640/360',
    imageAlt: 'Aperçu du déploiement Immich',
    description:
      'Galerie photos et vidéos auto-hébergée : import depuis mobile, reconnaissance faciale optionnelle, albums et partage contrôlé.\nAlternative aux clouds grand public, stack Docker avec stockage objet ou disque.',
    link: 'https://immich.app/',
    linkLabel: 'Immich — site officiel',
  },
  {
    id: 'authelia',
    title: 'Authelia',
    skills: ['Docker', 'Authentification', 'Cybersécurité', 'Web'],
    imageSrc: 'https://picsum.photos/seed/authelia-sso/640/360',
    imageAlt: 'Aperçu du déploiement Authelia',
    description:
      'Couche d’authentification et d’autorisation (SSO, 2FA, politiques d’accès) devant les services exposés.\nProtection des applications internes, intégration reverse proxy.\nConfiguration Docker et bonnes pratiques documentées sur le wiki.',
    link: 'https://www.authelia.com/',
    linkLabel: 'Authelia — site officiel',
  },
  {
    id: 'jellyfin',
    title: 'Jellyfin',
    skills: ['Docker', 'Vidéo', 'Streaming', 'Web'],
    imageSrc: 'https://picsum.photos/seed/jellyfin-media/640/360',
    imageAlt: 'Aperçu du déploiement Jellyfin',
    description:
      'Serveur multimédia libre : films, séries, musique et livres audio pour le réseau local ou à distance.\nTranscodage optionnel, clients TV et mobile.\nStack Docker, bibliothèques et accès utilisateurs gérés localement.',
    link: 'https://jellyfin.org/',
    linkLabel: 'Jellyfin — site officiel',
  },
]

/** Projets Docker auto-hébergés : section « Ecosystem Docker » sur la page Projets. */
export const ECOSYSTEM_DOCKER_IDS = [
  'jellyfin',
  'authelia',
  'seafile',
  'gitea',
  'immich',
  'wiki-documentation',
]

const projetById = Object.fromEntries(PROJETS.map((p) => [p.id, p]))

export const PROJETS_ECOSYSTEM_DOCKER = ECOSYSTEM_DOCKER_IDS.map((id) => projetById[id]).filter(
  Boolean,
)

export const PROJETS_MAIN = PROJETS.filter((p) => !ECOSYSTEM_DOCKER_IDS.includes(p.id))
