How 0xh4ku/comix-downloader works
comix-dl is a comix.to manga search and download application. Users enter through the scriptable or interactive CLI, or the optional TUI; these interfaces share an application session for lookup and downloads. The main domain stages are series resolution, chapter selection and deduplication, parallel image retrieval, and optional conversion, with resume state and history supporting recovery. The README documents several capabilities whose implementation was not sampled; those are represented only where the repository tree supports a path, and uncertain internal wiring is omitted.
Main entry points: session.py Application session · flows.py CLI flows · download_usecase.py Download use case · comix_to.py Site adapter
Components 23
User interfaces
- CLI flows
src/comix_dl/core/cli/flows.py - TUI shell
src/comix_dl/core/tui/app.py - TUI screens
src/comix_dl/core/tui/screens - TUI controller
src/comix_dl/core/tui/controller.py
Application workflow
- Application session
src/comix_dl/core/application/session.py - Series queries
src/comix_dl/core/application/query_usecase.py - Download use case
src/comix_dl/core/application/download_usecase.py - Cleanup use case
src/comix_dl/core/application/cleanup_usecase.py
comix.to integration
- Site adapter
src/comix_dl/sites/comix_to.py - Site API
src/comix_dl/sites/comix_to_api.py - Site parsing
src/comix_dl/sites/comix_to_parsing.py - Chapter dedup
src/comix_dl/sites/comix_to_dedup.py
Download and files
- Image downloader
src/comix_dl/core/downloader.py - File conversion
src/comix_dl/core/converters.py - Download files
src/comix_dl/core/fileio.py
Browser and state
- CDP browser
src/comix_dl/core/engines/cdp_browser.py - Browser lifecycle
src/comix_dl/core/engines/browser_session.py - Download history
src/comix_dl/core/history.py - Settings
src/comix_dl/core/settings.py
Other components
- User
- Chrome browser
- comix.to
- Local filesystem
Connections 27
- User → CLI flows: runs commands
- User → TUI shell: opens interface
- TUI shell → TUI screens: shows panes
- TUI screens → TUI controller: requests actions
- TUI controller → Application session: opens session
- CLI flows → Application session: opens session
- Application session → Series queries: runs lookup
- Application session → Download use case: runs download
- Series queries → Site adapter: requests series data
- Site adapter → Site API: uses API
- Site adapter → Site parsing: parses responses
- Site adapter → Chapter dedup: deduplicates chapters
- Site API → comix.to: requests metadata
- Download use case → Image downloader: downloads chapters
- Image downloader → CDP browser: fetches images
- CDP browser → Browser lifecycle: uses lifecycle
- Browser lifecycle → Chrome browser: connects by CDP
- CDP browser → comix.to: accesses site
- Download use case → File conversion: converts chapters
- Image downloader → Download files: manages download files
- File conversion → Download files: writes converted files
- Download files → Local filesystem: reads and writes
- CLI flows → Cleanup use case: requests cleanup
- Cleanup use case → Local filesystem: removes raw files
- Application session → Settings: loads settings
- CLI flows → Download history: views history
- Download use case → Download history: records results