About this project

Donghua TheRustic ID is a Laravel-based web application designed to manage and curate a collection of "donghua" (Chinese animated series). The application automates the discovery and ingestion of episode data from multiple external anime websites using web crawlers. Key features and architecture include: - **Models**: Includes Eloquent models such as `Donghua`, `Episode`, `Stream`, `Studio`, `Source`, `Status`, and `User` to structure the anime database. - **Crawling Engine**: Leverages the `spatie/crawler` package with custom observers located in `app/Observers` to parse specific target sites like Animexin, Animekhor, Donghuastream, and Donghuaworld. - **Data Extraction**: The observers handle list and episode page parsing, automatically creating `Episode` records, updating `Donghua` metadata (such as latest episode, external URLs, and cover images), and skipping YouTube iframe sources. - **Administration & UI**: Integrates the Filament admin panel and Livewire components (e.g., `EpisodeManager.php`) to provide an intuitive interface for managing episodes and monitoring crawler status. - **CLI Commands**: Provides Artisan commands to trigger and customize crawling tasks: - `app:crawl-test`: Tests crawler observers against a single URL for debugging. - `app:crawl-index`: Runs an index-page crawl for a specific donghua on a designated website label. - `app:crawl-updates`: Crawls the latest updates or homepage pages of a website, with optional pagination support. To run the crawlers, the application requires pre-configured `streams` records representing the target websites, along with proper storage permissions for downloading cover images.