RagaDL utilizes a decoupled, strategy-based scraping engine. The parser automatically cleans markup patterns and resolves high-resolution source images from:
- Ragalahari (
ragalahari.com,m.ragalahari.com) - Resolves full actress portfolios and media events. Downloads the entire set of high-res image listings directly. - Idlebrain (
idlebrain.com) - Tollywood gallery archives. Filters out promotional/navigation layouts and strips thumbnail suffixes to retrieve original clean source files. - Behindwoods (
behindwoods.com) - Extensive cinema and actress galleries. Because single galleries can hold thousands of images, it includes a batch range selector (Start ImagetoEnd Image) to crawl and download images in custom sizes safely.
- Smart Downloader - Paste a link from any of the supported portals. The scraper automatically detects the source, extracts individual image previews, and presents them in an interactive grid.
- Controlled Batch Downloading - Downloader queues downloads via background worker threads using a connection-pooled HTTP client. Supports pausing, resuming, and cancelling active downloads.
- Range-Bound Fetching - Enter custom ranges for Behindwoods links. Enables downloading large galleries in smaller batches to save data and prevent network timeouts.
- Favorites & History - Save your favorite galleries and celebrities. Features an offline search, download history, recycle bin, and single-click share options.
- Material 3 Customization - Sleek dark and light themes with dynamic primary color generation. Select an accent color from display settings, and the entire app adapts its color scheme on the fly.
- Offline Data Logs - View downloaded lists sorted by folder structure, search history, and manage space settings directly.
- State Management & Lifecycle - Built on Riverpod for reactive, compile-safe state caching. Implements
autoDisposecontrollers to clean up memory, isolate instances, and tear down streams when the user leaves a tab. - Concurrency Controls - Scrapers run on background Dart Isolates to offload HTML parsing and DOM manipulation from the main UI thread. Network crawling is restricted to a batch concurrency of
5to prevent server rate-limiting and connection exhaustion. - Connection Caching - Reusable, connection-pooled client using a singleton Dio client with custom exponential-backoff retries.
- Render Optimizations - Uses
RepaintBoundarywrappers on high-frequency scrolling widgets and lazy-loads zoom/gesture controllers in full-screen viewers to prevent frame drops.
- Make sure you have Flutter SDK installed.
- Clone the repository:
git clone https://github.com/DevSon1024/ragadl-app.git cd ragadl-app - Install dependencies:
flutter pub get
- Run the application on an emulator or connected device:
flutter run
If you find a bug, encounter a scraping error on a specific gallery, or want to suggest adding support for a new portal, please feel free to open a GitHub Issue.
This project is licensed under the MIT License.






