How onlyfart/elib2ebook works
Elib2Ebook is a CLI and web application for downloading books and comics from 100+ online sources, then saving them in one or more ebook formats. The documented workflow is to provide a source URL and download options, retrieve book metadata and selected chapter content through a site-specific getter, and build output files. CLI source confirms initialization, authorization, retrieval, and format-building calls; the web entry point and many adapters/builders were not sampled, so their internal wiring is shown only where supported by the tree or README.
Main entry points: Program.cs CLI · BuilderProvider.cs Builder provider · ExternalServices Site getters · Book.cs Book model
Components 21
Download orchestration
- Download options
src/Elib2Ebook.DomainServices/Configs/Options.cs - Getter config
src/Elib2Ebook.DomainServices/Configs/BookGetterConfig.cs - Getter factory
src/Elib2Ebook.DomainServices/Misc/GetterFactory.cs - Getter base
src/Elib2Ebook.DomainServices/Getters/GetterBase.cs
Source adapters
- Site getters
src/ExternalServices
Book content
- Book model
src/Elib2Ebook.Domain/Book/Book.cs - Chapter model
src/Elib2Ebook.Domain/Book/Chapter.cs - Authors and series
src/Elib2Ebook.Domain/Book/Author.cs - Temporary files
src/Elib2Ebook.Domain/Common/TempFile.cs
Output generation
- Builder provider
src/Elib2Ebook.DomainServices/Misc/BuilderProvider.cs - EPUB builder
src/Elib2Ebook.DomainServices/Builders/EpubBuilder.cs - FB2 builder
src/Elib2Ebook.DomainServices/Builders/Fb2Builder.cs - CBZ builder
src/Elib2Ebook.DomainServices/Builders/CbzBuilder.cs - JSON builders
src/Elib2Ebook.DomainServices/Builders/JsonBuilder.cs - TXT builder
src/Elib2Ebook.DomainServices/Builders/TxtBuilder.cs - Additional files
src/Elib2Ebook.DomainServices/Builders/AdditionaFileBuilder.cs
Other components
- User
- Book sites
- Saved files
Connections 27
- User → CLI: supplies URL and options
- User → Web app: uses
- CLI → Download options: parses
- CLI → Getter config: creates
- CLI → Getter factory: requests getter
- Getter factory → Site getters: selects getter
- Site getters → Getter base: implements
- Site getters → Book sites: requests book data
- Site getters → Book model: returns book
- Book model → Chapter model: contains chapters
- Book model → Authors and series: includes metadata
- Book model → Temporary files: references files
- CLI → Getter base: initializes and authorizes
- CLI → Site getters: retrieves book
- CLI → Builder provider: requests format builder
- Builder provider → EPUB builder: dispatches
- Builder provider → FB2 builder: dispatches
- Builder provider → CBZ builder: dispatches
- Builder provider → JSON builders: dispatches
- Builder provider → TXT builder: dispatches
- CLI → Additional files: builds optional files
- EPUB builder → Saved files: writes ebook
- FB2 builder → Saved files: writes ebook
- CBZ builder → Saved files: writes comic archive
- JSON builders → Saved files: writes JSON
- TXT builder → Saved files: writes text
- Additional files → Saved files: writes attachments