
S.O.K
PersonnelActif
Un logiciel de gestion de bibliothèque multimédia entièrement gratuit, conçu pour offrir une alternative moderne et puissante à FileBot, avec une interface en PyQt et une architecture robuste et maintenable.
Voir le projet →Genèse du projet
Le projet S.O.K est né d’un mélange d’ennui post-confinement et d’un défi personnel. À l’époque, un ami utilisait intensivement un logiciel de gestion de fichiers multimédias (FileBot), qui devenait de plus en plus payant au fil des versions. L’idée m’est alors venue de lui créer une alternative gratuite, reprenant les fonctionnalités essentielles, afin qu’il puisse continuer à organiser sa bibliothèque sans aucune contrainte.
À ce moment-là, j’étais encore très novice en programmation : cela faisait seulement un an que j’avais commencé la spécialité NSI au lycée, et je ne maîtrisais que Python. J’ai donc dû me former en autodidacte pour apprendre à réaliser des requêtes API, gérer des traitements fichiers, et créer une interface graphique avec Tkinter. S.O.K a été l’un de mes tout premiers véritables projets, et il m’a permis de mettre en pratique mes premiers apprentissages tout en répondant à un besoin concret.
Quatre ans plus tard, avec une une expérience bien plus solide en développement logiciel, j’ai décidé de reprendre complètement le projet. J’ai remplacé l’interface Tkinter par une interface moderne en PyQt, repensé l’architecture logicielle pour la rendre propre, maintenable et évolutive, et ajouté des fonctionnalités plus avancées, tout en conservant l’objectif initial : offrir une solution gratuite, accessible et puissante pour gérer une bibliothèque multimédia.
S.O.K est ainsi devenu bien plus qu’un simple exercice : c’est un projet personnel qui a évolué en même temps que mes compétences, passant d’un premier prototype artisanal à un logiciel structuré et pensé pour durer.
Choix techniques
- Langage
- Python
- Interface graphique
- PyQT6
- Sources de données
- API TMDB, TVDB, ...
- Packaging
- Nuitka
- Landing page
- Astro/TailwindCSS
Roadmap du projet
Conception de l'interface utilisateur
Création d'une interface intuitive et conviviale avec PyQT6.
TerminéIntégration des API de bases de données
Connexion aux API TMDB, TVDB pour récupérer les informations des médias.
TerminéFonctionnalités de gestion des médias
Développement des fonctionnalités pour ajouter, organiser et rechercher des médias.
TerminéPackaging et distribution
Utilisation de Nuitka pour créer des exécutables multiplateformes.
TerminéCorrections de bugs et améliorations
Maintenance continue pour corriger les bugs et ajouter de nouvelles fonctionnalités basées sur les retours des utilisateurs.
En cours