Skip to content

cyphalle/epub-ios

Repository files navigation

Lecteur EPUB Personnalisé

Une application iOS qui permet d'importer des fichiers EPUB, de les découper en chapitres, d'extraire le texte brut (sans balises HTML), et de les présenter comme une liste d'articles avec possibilité de copier le contenu de chaque chapitre.

Fonctionnalités

  • Importation de fichiers EPUB depuis Files, iCloud Drive et autres providers
  • Découpage automatique en chapitres basé sur la table des matières
  • Extraction du texte brut sans balises HTML
  • Interface minimaliste et élégante optimisée pour la lecture
  • Copie facile du contenu de chaque chapitre
  • Support du mode sombre et personnalisation de la taille de police
  • Gestion efficace de la mémoire pour les livres volumineux

Architecture

L'application utilise une architecture MVVM (Model-View-ViewModel) pour une séparation claire des responsabilités :

  • Models : Définition des structures de données pour les livres et chapitres
  • Views : Interface utilisateur en SwiftUI
  • ViewModels : Logique de présentation et traitement des données
  • Services : Traitement des EPUB et gestion des fichiers

Technologies utilisées

  • Swift 5.9 et SwiftUI pour l'interface utilisateur
  • FolioReaderKit pour le parsing des EPUB
  • SwiftSoup pour le nettoyage du HTML
  • Combine pour la gestion des flux de données réactifs
  • FileProvider pour l'accès aux fichiers

Installation

  1. Clonez ce dépôt
  2. Ouvrez le projet dans Xcode 15 ou supérieur
  3. Exécutez swift package resolve pour installer les dépendances
  4. Compilez et exécutez l'application sur un appareil ou simulateur iOS

Configuration requise

  • iOS 15.0 ou supérieur
  • Xcode 15 ou supérieur
  • Swift 5.9 ou supérieur

Structure du projet

EPUBReader/
├── Models/
│   ├── Book.swift
│   └── Chapter.swift
├── Views/
│   ├── HomeView.swift
│   ├── BookDetailView.swift
│   ├── ChapterView.swift
│   └── SettingsView.swift
├── ViewModels/
│   ├── BookLibraryViewModel.swift
│   ├── BookDetailViewModel.swift
│   └── ChapterViewModel.swift
├── Services/
│   ├── EPUBService.swift
│   └── FileService.swift
└── EPUBReaderApp.swift

Utilisation

  1. Lancez l'application
  2. Appuyez sur le bouton "+" pour importer un fichier EPUB
  3. Sélectionnez un livre dans la bibliothèque pour voir ses chapitres
  4. Sélectionnez un chapitre pour le lire
  5. Utilisez le bouton "Copier tout" pour copier le contenu du chapitre

Personnalisation

Vous pouvez personnaliser l'application via l'écran Paramètres :

  • Changer entre le mode clair et sombre
  • Ajuster la taille de police par défaut
  • Effacer le cache si nécessaire

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages