Logo of the multimedia management software S.O.K

S.O.K

Personal

Active

A completely free multimedia library management software, designed to offer a modern and powerful alternative to FileBot, with a PyQt interface and a robust and maintainable architecture.

View Project →

Project Genesis

The S.O.K project was born from a mix of post-lockdown boredom and a personal challenge. At the time, a friend was using a multimedia file management software heavily (FileBot), which was becoming increasingly paid over versions. The idea then came to me to create a free alternative for him, taking up the essential features so that he could continue to organize his library without any constraints.

At that time, I was still very new to programming: it had only been a year since I started the NSI specialty in high school, and I only mastered Python. So I had to teach myself to make API requests, handle file processing, and create a graphical interface with Tkinter. S.O.K was one of my very first real projects, and it allowed me to put my first learnings into practice while meeting a concrete need.

Four years later, with much more solid experience in software development, I decided to completely take over the project. I replaced the Tkinter interface with a modern PyQt interface, rethought the software architecture to make it clean, maintainable, and scalable, and added more advanced features, while keeping the initial goal: to offer a free, accessible, and powerful solution for managing a multimedia library.

S.O.K has thus become much more than a simple exercise: it is a personal project that has evolved along with my skills, going from a first artisanal prototype to structured software designed to last.

Technical Choices

Language
Python
GUI
PyQT6
Data sources
TMDB API, TVDB, ...
Packaging
Nuitka
Landing page
Astro/TailwindCSS

Project Roadmap

  1. User Interface Design

    Creation of an intuitive and user-friendly interface with PyQT6.

    Completed
  2. Database API Integration

    Connection to TMDB, TVDB APIs to retrieve media information.

    Completed
  3. Media Management Features

    Development of features to add, organize, and search for media.

    Completed
  4. Packaging and Distribution

    Using Nuitka to create cross-platform executables.

    Completed
  5. Bug Fixes and Improvements

    Ongoing maintenance to fix bugs and add new features based on user feedback.

    In Progress