From 234fa95bd8d786e8c022966dda06b5cef511aa39 Mon Sep 17 00:00:00 2001 From: NotYarazi Date: Sun, 15 Feb 2026 07:11:51 +0000 Subject: [PATCH 1/4] Quick syntax fix :3 --- README.md | 12 ++++++------ changelog.md | 10 +++++----- 2 files changed, 11 insertions(+), 11 deletions(-) diff --git a/README.md b/README.md index 11523e4..eb76db2 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,8 @@ -

-☆ DownSrc ☆ -

"I just want to download my stuff ugh.."

-

+

+

☆ DownSrc ☆

+ +

"I just want to download my stuff ugh.."

+

@@ -12,8 +13,7 @@
- -

+

A simple, cute command-line tool for downloading files and websites.

diff --git a/changelog.md b/changelog.md index 4868b0f..a83a497 100644 --- a/changelog.md +++ b/changelog.md @@ -1,12 +1,12 @@ # Release 1.1.0 -> "More colors, more touch" - february 15 2026 +> "More colors, more touch" - 15 February 2026 - Organized code structure, now with custom notes and headers. - More color support & dictionary! -- Accessibility option: if not especified with a value, the command enters in interactive mode, gives u a visual choice. +- Accessibility option: if not specified with a value, the command enters in interactive mode, gives u a visual choice. - More documentation. - Added crawler.js for the project to gain aura. -- Fixed html creation & added more symbol commands: "sheep, bee". - +- Fixed HTML creation & added more symbol commands: "sheep, bee". + # Release 1.0.0 -> "Initial version" - february 08 2026 +> "Initial version" - 08 February 2026 - Added everything. \ No newline at end of file From b59792ba0b5463cc5fa8f1d6531991c4b2d3493f Mon Sep 17 00:00:00 2001 From: m4iva Date: Wed, 18 Feb 2026 22:00:45 +0000 Subject: [PATCH 2/4] Create crazy.txt Signed-off-by: m4iva --- resources/crazy.txt | 1 + 1 file changed, 1 insertion(+) create mode 100644 resources/crazy.txt diff --git a/resources/crazy.txt b/resources/crazy.txt new file mode 100644 index 0000000..e1ab559 --- /dev/null +++ b/resources/crazy.txt @@ -0,0 +1 @@ +1. Crazy, dude From b1676575b290e72bade0316df4c3469ba13e6844 Mon Sep 17 00:00:00 2001 From: m4iva Date: Fri, 20 Feb 2026 17:50:27 +0000 Subject: [PATCH 3/4] Update crazy.txt Signed-off-by: m4iva --- resources/crazy.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/resources/crazy.txt b/resources/crazy.txt index e1ab559..ebef644 100644 --- a/resources/crazy.txt +++ b/resources/crazy.txt @@ -1 +1,2 @@ 1. Crazy, dude +2. Supa crazy, dude From e13bfa36368fb420b5b6778f42a76b4a57424a5a Mon Sep 17 00:00:00 2001 From: NotYarazi Date: Sun, 8 Mar 2026 05:13:00 +0000 Subject: [PATCH 4/4] Release 1.2.0 - Added documentation! - Updated dependencies. - Polished action system! - Created crazy files. --- .gitignore | 2 +- README.md | 8 +- changelog.md | 6 + docs/README.md | 27 +++ docs/actions.md | 135 ++++++++++++++ docs/configuration.md | 102 +++++++++++ docs/examples.md | 330 +++++++++++++++++++++++++++++++++++ docs/flag-syntax.md | 94 ++++++++++ docs/flags.md | 203 +++++++++++++++++++++ docs/getting-started.md | 103 +++++++++++ package.json | 4 +- resources/terminal-wowies.js | 2 +- 12 files changed, 1007 insertions(+), 9 deletions(-) create mode 100644 docs/README.md create mode 100644 docs/actions.md create mode 100644 docs/configuration.md create mode 100644 docs/examples.md create mode 100644 docs/flag-syntax.md create mode 100644 docs/flags.md create mode 100644 docs/getting-started.md diff --git a/.gitignore b/.gitignore index ff51652..60d30ae 100644 --- a/.gitignore +++ b/.gitignore @@ -3,10 +3,10 @@ package-lock.json node_modules/ # Development +.github/ privdocs/ notes.txt # Disabled -docs/ tests/ *.log \ No newline at end of file diff --git a/README.md b/README.md index eb76db2..9730ffa 100644 --- a/README.md +++ b/README.md @@ -120,13 +120,13 @@ downsrc -v https://example.com ## ☆-Documentation For now.. none, keep exploring on ur own - +- [Examples](docs/examples.md) ## ☆-Examples @@ -281,6 +281,4 @@ Big help! thank u so much ## ☆-Contributing Free to do something. in fact.. free to do anything, did u read the [LICENSE](LICENSE) file?? - - -## ☆-Author - [**everm4iva** (m4iva)](https://everm4iva.github.io) \ No newline at end of file +## ☆-Author - [**everm4iva** (m4iva)](https://everm4iva.github.io/social) \ No newline at end of file diff --git a/changelog.md b/changelog.md index a83a497..1a70400 100644 --- a/changelog.md +++ b/changelog.md @@ -1,3 +1,9 @@ +# Release 1.2.0 +- Added documentation! +- Updated dependencies. +- Polished action system! +- Created crazy files. + # Release 1.1.0 > "More colors, more touch" - 15 February 2026 - Organized code structure, now with custom notes and headers. diff --git a/docs/README.md b/docs/README.md new file mode 100644 index 0000000..7ecbae6 --- /dev/null +++ b/docs/README.md @@ -0,0 +1,27 @@ +# Downsrc Documentation + +Welcome to the Downsrc documentation. This directory contains detailed information about using and configuring Downsrc. + +## Documentation Files + +- [Getting Started](getting-started.md) - Installation and basic usage +- [Flags Reference](flags.md) - All available command-line flags +- [Configuration](configuration.md) - Settings and customization +- [Actions](actions.md) - Creating and managing custom actions +- [Examples](examples.md) - Common use cases and examples + +## Quick Start + +Install Downsrc globally: + +```bash +npm install -g @everm4iva/downsrc +``` + +Basic usage: + +```bash +downsrc https://example.com/file.zip +``` + +For more information, see [Getting Started](getting-started.md). diff --git a/docs/actions.md b/docs/actions.md new file mode 100644 index 0000000..765fe84 --- /dev/null +++ b/docs/actions.md @@ -0,0 +1,135 @@ +# Actions + +Actions are custom commands that you can define and run with Downsrc. + +## What are Actions? + +Actions allow you to create shortcuts for commonly used commands or workflows. They are stored in `resources/actions.json`. + +## Managing Actions + +### List All Actions + +```bash +downsrc action list +``` + +Or simply: + +```bash +downsrc action +``` + +### Add an Action + +```bash +downsrc action add +``` + +Example: + +```bash +downsrc action add backup "cp -r ./downloads ./backup" +downsrc action add clean "rm -rf ./downloads/*" +downsrc action add notify "echo Download complete!" +``` + +### Remove an Action + +```bash +downsrc action remove +``` + +Example: + +```bash +downsrc action remove backup +``` + +## Running Actions + +Execute an action with the `run` command: + +```bash +downsrc run +``` + +Example: + +```bash +downsrc run backup +downsrc run clean +``` + +## Action Examples + +### Post-Download Notification + +```bash +downsrc action add notify "notify-send 'Downsrc' 'Download complete!'" +``` + +### Organize Downloads + +```bash +downsrc action add organize "mkdir -p ./downloads/images && mv ./downloads/*.jpg ./downloads/images/" +``` + +### Backup Downloads + +```bash +downsrc action add backup "tar -czf downloads_backup.tar.gz ./downloads" +``` + +### Clean Temp Files + +```bash +downsrc action add clean-temp "rm -rf ./.downsrc_temp" +``` + +## Actions File Format + +Actions are stored in JSON format in `resources/actions.json`: + +```json +{ + "actions": [ + {"name": "example", "command": "echo Hello from Downsrc!"}, + {"name": "backup", "command": "cp -r ./downloads ./backup"} + ] +} +``` + +## Best Practices + +1. Use descriptive names for your actions +2. Test commands before adding them as actions +3. Be careful with destructive commands (rm, del, etc.) +4. Document your custom actions in comments +5. Keep commands simple and focused on one task + +## Advanced Usage + +### Chaining Commands + +You can chain multiple commands in a single action: + +**Linux/Mac:** + +```bash +downsrc action add full-cleanup "rm -rf ./downloads/* && rm -rf ./.downsrc_temp && echo Cleanup complete" +``` + +**Windows:** + +```bash +downsrc action add full-cleanup "del /q downloads\\* & echo Cleanup complete" +``` + +### Using Variables + +While Downsrc actions don't support parameters directly, you can use environment variables: + +```bash +downsrc action add backup-dated "cp -r ./downloads ./backup-$(date +%Y%m%d)" +``` diff --git a/docs/configuration.md b/docs/configuration.md new file mode 100644 index 0000000..134b5d3 --- /dev/null +++ b/docs/configuration.md @@ -0,0 +1,102 @@ +# Configuration + +Downsrc can be customized through the `coolshits.json` configuration file. + +## Configuration File Location + +The configuration file is located at: + +``` +resources/coolshits.json +``` + +## Available Settings + +### `accentColor` + +The accent color used in the terminal interface. + +Default: `"orange"` + +### `symbolsPath` + +Path to the symbols directory. + +Default: `"./resources/symbols"` + +### `defaultDownloadDir` + +Default directory for downloads when no path is specified. + +Default: `"./downloads"` + +### `showProgress` + +Whether to show progress bars during downloads. + +Default: `true` + +### `maxConcurrentDownloads` + +Maximum number of concurrent file downloads when downloading multiple files. + +Default: `3` + +### `defaultZipAfterDownload` + +Whether to automatically zip files after download without using the `-z` flag. + +Default: `false` + +## Changing Settings + +### Via Command Line + +Use the `set` command to change settings: + +```bash +downsrc set maxConcurrentDownloads 5 +downsrc set defaultZipAfterDownload true +downsrc set defaultDownloadDir C:/Downloads +``` + +### Via Direct Edit + +You can also edit the `coolshits.json` file directly: + +```json +{ + "accentColor": "orange", + "symbolsPath": "./resources/symbols", + "defaultDownloadDir": "./downloads", + "showProgress": true, + "maxConcurrentDownloads": 5, + "defaultZipAfterDownload": true +} +``` + +## Example Configurations + +### High-Speed Configuration + +Maximize concurrent downloads for faster completion: + +```json +{"maxConcurrentDownloads": 10, "showProgress": true} +``` + +### Minimal Configuration + +Reduce resource usage: + +```json +{"maxConcurrentDownloads": 1, "showProgress": false} +``` + +### Auto-Zip Configuration + +Always zip downloads by default: + +```json +{"defaultZipAfterDownload": true, "defaultDownloadDir": "C:/MyDownloads"} +``` diff --git a/docs/examples.md b/docs/examples.md new file mode 100644 index 0000000..33de9ea --- /dev/null +++ b/docs/examples.md @@ -0,0 +1,330 @@ +# Examples + +Real-world examples of using Downsrc. + +## Basic Downloads + +### Download a Single File + +```bash +downsrc https://example.com/document.pdf +``` + +Downloads the PDF and asks where to save it. + +### Download and Open + +```bash +downsrc -o https://example.com/image.jpg +``` + +Downloads the image and opens it immediately. + +### Download to Specific Location + +```bash +downsrc -p ./my-files https://example.com/data.zip +``` + +Downloads directly to the `my-files` directory. + +## Webpage Downloads + +### Download Complete Website + +```bash +downsrc https://example.com/page.html +``` + +Downloads the HTML page and all resources (CSS, JS, images). + +### Download and Zip Website + +```bash +downsrc -z https://example.com/portfolio +``` + +Downloads the website and creates a zip archive. + +### Download with HTML Report + +```bash +downsrc -hr https://example.com/blog +``` + +Downloads the website and generates a detailed HTML report. + +## Advanced Downloads + +### Time-Limited Download + +```bash +downsrc -tl 30 https://slow-server.com/large-file.zip +``` + +Cancels download if it takes longer than 30 seconds. + +### Size-Limited Download + +```bash +downsrc -ms 50 https://media-site.com/gallery +``` + +Skips any files larger than 50 MB. + +### Interactive Size Check + +```bash +downsrc -mss 100 https://example.com/files +``` + +Asks for confirmation before downloading files larger than 100 MB. + +## Quality and Reports + +### Download with Quality Report + +```bash +downsrc -dr https://example.com/content +``` + +Downloads and displays a quality rating of the download. + +### Complete Workflow with Reports + +```bash +downsrc -z -hr -dr https://example.com/project +``` + +Downloads, zips, generates HTML report, and shows quality report. + +### Debug Download + +```bash +downsrc -z -d https://problematic-site.com +``` + +Downloads with debug logging included in the zip file. + +## Advanced Scraping + +### Basic Advanced Scraping + +```bash +downsrc -as 3 https://example.com/docs +``` + +Downloads the page and follows up to 3 same-domain links, downloading each with their resources. + +### Download Only Main Page + +```bash +downsrc -as 0 https://example.com/page +``` + +Downloads only the specified page and its resources (no link following). + +### Scrape Entire Site + +```bash +downsrc -as https://example.com/wiki +``` + +Follows all same-domain links. Will prompt for confirmation if more than 10 links found. + +### Scraping with Auto-Confirm + +```bash +downsrc -as 15 -y https://example.com/blog +``` + +Automatically follows 15 links without prompting for confirmation. + +## File Extension Filtering + +### Download Only Images + +```bash +downsrc -fe "png & jpg & webp" https://example.com/gallery +``` + +Downloads only image files with specified extensions. + +### Download Only Documents + +```bash +downsrc -fe "pdf & docx & txt" https://example.com/resources +``` + +Filters to download only document files. + +### Single Extension Filter + +```bash +downsrc -fe svg https://example.com/icons +``` + +Downloads only SVG files from the page. + +## Combined Features + +### Scrape and Filter + +```bash +downsrc -as 5 -fe "png & jpg" https://example.com/photos +``` + +Follows 5 links and downloads only PNG and JPG images from all pages. + +### Complete Scraping Workflow + +```bash +downsrc -as 10 -fe pdf -z -dr -p ./documents https://example.com/papers +``` + +Follows 10 links, downloads only PDFs, zips results, shows quality report, saves to specific path. + +### Filtered Download with Report + +```bash +downsrc -fe "mp3 & wav & flac" -z -hr https://example.com/music +``` + +Downloads only audio files, creates zip archive, and generates HTML report. + +## Checking and Validation + +### Check Accessibility + +```bash +downsrc -c https://example.com/file.zip +``` + +Checks if the file is accessible without downloading. + +### Security Check + +```bash +downsrc -v https://example.com +``` + +Checks SSL certificate and security of the website. + +### Batch Accessibility Check + +Check multiple URLs (using actions): + +```bash +downsrc action add check-urls "downsrc -c https://site1.com && downsrc -c https://site2.com" +downsrc run check-urls +``` + +## Interactive UI + +### Web-Based Download UI + +```bash +downsrc -hh https://example.com/large-site +``` + +Opens a browser with live download progress and statistics. + +## Automation + +### Auto-Confirm All Prompts + +```bash +downsrc -y -z https://example.com/files +``` + +Downloads and zips without asking for confirmation. + +### Silent Download with Path + +```bash +downsrc -y -p ./downloads https://example.com/file.zip +``` + +Downloads silently to specified directory. + +## Workflows + +### Complete Download Workflow + +```bash +downsrc -z -dr -hr -p ./projects/website https://example.com +``` + +Downloads website, zips it, shows quality report, generates HTML report, saves to specific path. + +### Quick Check and Download + +```bash +downsrc -c https://example.com/file.zip +# If accessible, then: +downsrc -o -p ./downloads https://example.com/file.zip +``` + +First checks accessibility, then downloads and opens if available. + +### Development Workflow + +```bash +# Download with debug logging +downsrc -debug-on +downsrc -z -d https://example.com/project +downsrc -debug-off +``` + +Enables debug mode, downloads with debug info, then disables debug mode. + +## Custom Actions + +### Create Backup Action + +```bash +downsrc action add backup-downloads "tar -czf downloads_$(date +%Y%m%d).tar.gz ./downloads" +``` + +### Create Download-and-Backup Workflow + +```bash +downsrc -p ./downloads https://example.com/file.zip +downsrc run backup-downloads +``` + +## Multiple Downloads + +While not directly supported with a single command, you can use actions: + +```bash +downsrc action add multi-download "downsrc https://site1.com/file1.zip && downsrc https://site2.com/file2.zip" +downsrc run multi-download +``` + +## Tips and Tricks + +### Quick Cat Display + +Show the cat symbol for fun: + +```bash +downsrc cat +``` + +### View Package Details + +```bash +downsrc details +``` + +Shows information about Downsrc and its creator. + +### Customize Settings + +```bash +downsrc set maxConcurrentDownloads 10 +downsrc set defaultZipAfterDownload true +``` + +Customize behavior without command-line flags. diff --git a/docs/flag-syntax.md b/docs/flag-syntax.md new file mode 100644 index 0000000..b44a66b --- /dev/null +++ b/docs/flag-syntax.md @@ -0,0 +1,94 @@ +# Command-Line Flag Syntax + +## Important: Use Double-Dash for Multi-Character Flags! + +Due to how the command-line parser (minimist) works, **multi-character flags require double-dash (`--`)** syntax. + +### Correct Syntax + +#### Single-Character Flags (use single dash `-`) + +```bash +-o # Open file after download +-c # Check link accessibility +-z # Zip files +-d # Include debug in zip +-v # Check vulnerabilities +-y # Yes to all +-n # No to all +-p # Path (takes value) +``` + +#### Multi-Character Flags (use double dash `--`) + +```bash +--tl # Time limit +--ms # Max size +--mss # Max size pause +--hr # HTML report +--hh # HTML host +--dr # Download report +--fe # File extension filter +--as # Advanced scraping +--debug-on # Enable debug +--debug-off # Disable debug +``` + +### Examples of Correct Usage + +```bash +# ✅ Correct - using double-dash for multi-character flags +downsrc --fe "svg" https://example.com/assets +downsrc --as 5 https://example.com +downsrc --as 3 --fe "pdf" https://example.com/docs + +# ❌ Wrong - single dash doesn't work for multi-character flags +downsrc -fe "svg" https://example.com/assets # Parsed as -f -e "svg" +downsrc -as 5 https://example.com # Parsed as -a -s 5 +``` + +### Why This Matters + +When you use `-as`, the parser sees it as TWO separate flags: + +- `-a` (boolean flag, set to true) +- `-s` (with value `5`) + +This means `options.DeepScraping` remains `undefined`! + +With `--as`, the parser correctly sees it as ONE flag: + +- `--as` (with value `5`) +- `options.DeepScraping` = `'5'` ✅ + +## Updated Command Examples + +### Download only SVG files + +```bash +downsrc --fe "svg" https://umaera.github.io/assets +``` + +### Download page + 5 linked pages (same domain) + +```bash +downsrc --as 5 https://umaera.github.io +``` + +### Combine advanced scraping with file filtering + +```bash +downsrc --as 3 --fe "png & jpg & svg" https://example.com/gallery +``` + +### Complete workflow + +```bash +downsrc -z --dr --hr --as 5 --fe "pdf & docx" -p ./downloads https://example.com +``` + +## Summary + +- **Single character flags**: Use `-` (e.g., `-o`, `-z`, `-c`) +- **Multi-character flags**: Use `--` (e.g., `--as`, `--fe`, `--tl`) +- Always check the help: `downsrc help` diff --git a/docs/flags.md b/docs/flags.md new file mode 100644 index 0000000..d3fd5b7 --- /dev/null +++ b/docs/flags.md @@ -0,0 +1,203 @@ +# Flags Reference + +Complete reference for all Downsrc command-line flags. + +## Download Flags + +### `-o, --open` + +Opens the downloaded file after completion. + +```bash +downsrc -o https://example.com/document.pdf +``` + +### `-z, --zip` + +Creates a zip archive of the downloaded files. + +```bash +downsrc -z https://example.com/website +``` + +### `-p, --path ` + +Specifies the download destination path. + +```bash +downsrc -p ./downloads https://example.com/file.zip +``` + +### `-as, --advanced-scraping ` + +Enables advanced scraping mode. Downloads the page and follows same-domain links recursively. + +- If `root-num` is `0`: Downloads only the provided link and its assets +- If `root-num` is a number (e.g., `5`): Scans and downloads that many links plus their assets +- If `root-num` is not provided or invalid: Scans all same-domain links (warns if >10) + +**Note:** Only follows links within the same domain. External domain links are not followed. + +```bash +# Download page and follow 3 same-domain links +downsrc -as 3 https://example.com/website + +# Download only the page itself (no link following) +downsrc -as 0 https://example.com/page + +# Download all same-domain links (will prompt if many links found) +downsrc -as https://example.com/site +``` + +### `-fe, --file-extension ` + +Filters downloads to only include files with specified extensions. Supports multiple extensions separated by `&`. + +```bash +# Download only PNG files +downsrc -fe png https://example.com/gallery + +# Download multiple file types +downsrc -fe "png & jpg & webp & svg" https://example.com/images + +# Download only documents +downsrc -fe "pdf & docx & txt" https://example.com/documents + +# Combine with advanced scraping +downsrc -as 5 -fe "pdf & pptx" https://example.com/resources +``` + +## Time and Size Limits + +### `-tl, --timelimit ` + +Sets a time limit for the download. Cancels if exceeded. + +```bash +downsrc -tl 30 https://example.com/file.zip +``` + +### `-ms, --max-size ` + +Skips files larger than the specified size in MB. + +```bash +downsrc -ms 100 https://example.com/website +``` + +### `-mss, --max-size-pause ` + +Pauses and asks before downloading files larger than the specified size. + +```bash +downsrc -mss 50 https://example.com/website +``` + +## Reports and Output + +### `-hr, --html-report` + +Generates an HTML report of the download. + +```bash +downsrc -hr https://example.com/website +``` + +### `-hh, --html-host` + +Starts a local web server and displays download progress in the browser. + +```bash +downsrc -hh https://example.com/website +``` + +### `-dr, --download-report` + +Displays a quality report after download completion. + +```bash +downsrc -dr https://example.com/website +``` + +### `-d, --debug-zip` + +Includes debug.txt file with logs in the zip archive. + +```bash +downsrc -z -d https://example.com/website +``` + +## Checking and Validation + +### `-c, --check` + +Checks if the URL is accessible without downloading. + +```bash +downsrc -c https://example.com/file.zip +``` + +### `-v, --vulnerable` + +Checks SSL certificates and security vulnerabilities. + +```bash +downsrc -v https://example.com +``` + +## Automation Flags + +### `-y, --yes` + +Automatically answers "yes" to all prompts. + +```bash +downsrc -y https://example.com/website +``` + +### `-n, --no` + +Automatically answers "no" to all prompts. + +```bash +downsrc -n https://example.com/website +``` + +## Debug Mode + +### `-debug-on` + +Enables debug mode. Logs everything to files in Documents/downsrc. + +```bash +downsrc -debug-on +``` + +### `-debug-off` + +Disables debug mode. + +```bash +downsrc -debug-off +``` + +## Combining Flags + +Flags can be combined for powerful workflows: + +```bash +# Download, zip, generate report, and open +downsrc -z -dr -o https://example.com/website + +# Download with time limit and size limit +downsrc -tl 60 -ms 100 https://example.com/website + +# Download to specific path and auto-confirm +downsrc -p ./my-downloads -y https://example.com/file.zip + +# Advanced scraping with file filtering +downsrc -as 5 -fe "png & jpg" https://example.com/gallery + +# Complete workflow: scrape, filter, zip, and report +downsrc -as 3 -fe pdf -z -dr -p ./documents https://example.com/resources +``` diff --git a/docs/getting-started.md b/docs/getting-started.md new file mode 100644 index 0000000..69ff8a9 --- /dev/null +++ b/docs/getting-started.md @@ -0,0 +1,103 @@ +# Getting Started with Downsrc + +Downsrc is a simple, powerful command-line tool for downloading files and websites. + +## Installation + +Install Downsrc globally using npm: + +```bash +npm install -g @everm4iva/downsrc +``` + +Or with a package manager alternative: + +```bash +yarn global add @everm4iva/downsrc +``` + +## Basic Usage + +### Download a Single File + +```bash +downsrc https://example.com/file.zip +``` + +Downloads the file and prompts you where to save it. + +### Download a Webpage + +```bash +downsrc https://example.com/page.html +``` + +Downloads the HTML page and all its resources (images, CSS, JavaScript). + +### Check If a Link is Accessible + +```bash +downsrc -c https://example.com/file.zip +``` + +Checks if the URL is accessible without downloading. + +### Check Security/Certificates + +```bash +downsrc -v https://example.com +``` + +Checks SSL certificates and security of the website. + +## Common Flags + +- `-o` - Open the file after downloading +- `-z` - Zip the downloaded files +- `-p ` - Specify where to save files +- `-dr` - Show download quality report +- `-hr` - Generate HTML report +- `-as ` - Advanced scraping (follow same-domain links) +- `-fe ` - Filter by file extension (e.g., "png & jpg") + +For a complete list of flags, see [Flags Reference](flags.md). + +## Advanced Features + +### Advanced Scraping + +Download a page and follow links recursively: + +```bash +# Follow 3 same-domain links +downsrc -as 3 https://example.com/website + +# Follow all links (will prompt if many) +downsrc -as https://example.com/site +``` + +### File Extension Filtering + +Download only specific file types: + +```bash +# Only download images +downsrc -fe "png & jpg & svg" https://example.com/gallery + +# Only download documents +downsrc -fe "pdf & docx" https://example.com/resources +``` + +### Combining Features + +```bash +# Scrape 5 links, download only PDFs, and zip the results +downsrc -as 5 -fe pdf -z https://example.com/papers +``` + +## Next Steps + +- Learn about all available [flags](flags.md) +- Configure Downsrc [settings](configuration.md) +- Create custom [actions](actions.md) +- See more [examples](examples.md) diff --git a/package.json b/package.json index 353f715..e12acf9 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@everm4iva/downsrc", - "version": "1.1.0", + "version": "1.2.0", "description": "Dude.. i just want to download my stuff, ugh...", "homepage": "https://github.com/everm4iva/downsrc#readme", "bugs": { @@ -25,7 +25,7 @@ "archiver": "^7.0.1", "chalk": "^5.6.2", "cheerio": "^1.2.0", - "cli-progress": "^3.9.1", + "cli-progress": "^3.12.0", "minimist": "^1.2.8", "open": "^11.0.0", "p-limit": "^7.3.0", diff --git a/resources/terminal-wowies.js b/resources/terminal-wowies.js index 3a0a37a..83ddb24 100644 --- a/resources/terminal-wowies.js +++ b/resources/terminal-wowies.js @@ -225,7 +225,7 @@ function printHelp() { function printDetails() { printHeader('Downsrc (DownSource)'); console.log(colors.white(' Created by: ') + colors.accent('m4iva (everm4iva)')); - console.log(colors.white(' Version: ') + colors.accent('1.1.0')); + console.log(colors.white(' Version: ') + colors.accent('1.2.0')); console.log(colors.white(' GitHub: ') + colors.accent('github.com/everm4iva/downsrc')); console.log(colors.white(' Description: ') + colors.dim('"I just want to download my stuff ugh.."\n')); }