Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -3,10 +3,10 @@ package-lock.json
node_modules/

# Development
.github/
privdocs/
notes.txt

# Disabled
docs/
tests/
*.log
20 changes: 9 additions & 11 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,8 @@
<h2> <p style="text-align:center">
☆ DownSrc ☆
<p style="text-align:center; font-size: 1rem; font-weight: normal;"> "I just want to download my stuff ugh.." </p>
</p></h2>
<h2>
<p align="center">☆ DownSrc ☆</p>

<p align="center">"I just want to download my stuff ugh.." </p>
</h2>

<div align="center">

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

</div>


<p style="text-align:center">
<p align="center">
<img src="./resources/img/preview.png">
A simple, cute command-line tool for downloading files and websites.
</p>
Expand Down Expand Up @@ -120,13 +120,13 @@ downsrc -v https://example.com
## ☆-Documentation
For now.. none, keep exploring on ur own

<!-- Documentation is available in the [docs](docs/) folder:
Documentation is available in the [docs](docs/) folder:

- [Getting Started](docs/getting-started.md)
- [Flags Reference](docs/flags.md)
- [Configuration](docs/configuration.md)
- [Actions](docs/actions.md)
- [Examples](docs/examples.md) -->
- [Examples](docs/examples.md)

## ☆-Examples

Expand Down Expand Up @@ -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)
## ☆-Author - [**everm4iva** (m4iva)](https://everm4iva.github.io/social)
16 changes: 11 additions & 5 deletions changelog.md
Original file line number Diff line number Diff line change
@@ -1,12 +1,18 @@
# Release 1.2.0
- Added documentation!
- Updated dependencies.
- Polished action system!
- Created crazy files.

# 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.
27 changes: 27 additions & 0 deletions docs/README.md
Original file line number Diff line number Diff line change
@@ -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).
135 changes: 135 additions & 0 deletions docs/actions.md
Original file line number Diff line number Diff line change
@@ -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 <name> <command>
```

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 <name>
```

Example:

```bash
downsrc action remove backup
```

## Running Actions

Execute an action with the `run` command:

```bash
downsrc run <action-name>
```

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)"
```
102 changes: 102 additions & 0 deletions docs/configuration.md
Original file line number Diff line number Diff line change
@@ -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"}
```
Loading
Loading