Virtual Comics Library (abrégé VCL) est une application qui permet de gérer et consulter une bibliothèque de bandes dessinées virtuelles.
Terminologie
Volume : Elément le plus petit dans la bibliothèque, Représente son équivalent physique (ensemble de pages reliées). Correspond à un fichier .cb* sur le système de fichiers.
Série : Ensemble de volumes et métadonnées associées.
Catégorie : Ensemble de catégories et séries.
Tag : Méta-information sur une série
Catalogue : Ensemble de Catégories et Séries situés dans un même emplacement physique sur un système de fichiers (distant ou local).
Bibliothèque : Ensembles de catalogues de l’application. Est spécifique à une installation.
Objectifs
Doit permettre de gérer plusieurs catalogues soit sur un système de fichiers local soit situé sur un serveur distant (en utilisant le protocole http)
Doit permettre de classer les séries dans un arbre de catégories.
Doit permettre d’ajouter des « tags » aux séries
Doit permettre de lire un volume
Affichage en simple page ou double page
Sens de lecture GàD ou DàG
Doit permettre de modifier les informations d’une série
Doit permettre de créer une série vide
Doit permettre d’adapter un fragment de site web en série ou volume
Effectue la création à l’aide de plugins
Doit fournir une bibliothèque permettant d’abstraire les interactions avec les données.
Modules
libVCL : Fournit une bibliothèque d’abstraction des interactions avec les catalogues et leurs objets.
Library : Permet la consultation et modification graphique du contenu des catalogues.
Reader : Permet la consultation d’un volume. Doit pouvoir être utilisé en standalone
Editor : Permet la modification d’un volume. Doit pouvoir être utilisé en standalone.
Downloader : Permet le téléchargement d’un site vers un catalogue. Utilisation en ligne de commande possible.
Fonctionnalités
Interface Utilisateur (général)
Interface Single Window
Utilise des onglets pour la navigation
Restore les onglets ouverts lors de la réouverture du programme
Bibliothèque
Affiche la liste des Catalogues, Catégories et Volumes dans une TreeView sur la gauche.
Affiche une liste des Volumes (si une série est sélectionnée) ou Séries (si une Catégorie est sélectionnée) au centre sous la forme d’une grille de couvertures.
Affiche les informations de l’élément sélectionné dans un panneau sur la droite.
Permet la gestion (ajout, suppression, déplacement) de Séries, Volumes et Catégories.
Image: Bibliothèque
Liseuse
Permet de consulter le contenu d’un Volume
Est présenté dans un onglet lancé depuis la Bibliothèque ou en standalone.
Affiche les images contenues dans le fichier du volume.
Supporte l’affichage en « simple page » ou « double page » en détectant de manière automatique si une image contenant deux pages doit être affichée
Gère la lecture Gauche à Droite (Comics) et Droite à Gauche (Mangas)
Affiche un tiroir de miniatures qui permet de naviguer dans le Volume
Image: Liseuse
Crawler
Permet de télécharger une Série à partir d’un site web n’offrant pas de Catalogue
Utilise des Plugins pour reconnaitre les différents sites pris en charge.
Les plugins sont chargés à partir de fichiers Javascript à l’aide de Nashorn.
Mise à jour automatique des plugins publics à travers de l’API Github
Image: Crawler
libVCL (Bibliothèque d’abstraction)
Fournit une API publique pour interagir de manière unifiée aux données
Gère le téléchargement et mise en cache des objets distants (catalogues et volumes)