Skip to content

Run on Terminal

Run r10n directly from your terminal without cloning or installing anything. Perfect for quick, one-off automation tasks.


Prerequisites

You need uv installed. If you don't have it:

curl -LsSf https://astral.sh/uv/install.sh | sh
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"
brew install uv

Verify installation:

uv --version

Run Any Automation Instantly

Use uvx to run r10n without installing:

uvx --from git+https://github.com/pruthivithejan/r10n.git r10n --help

This downloads r10n temporarily, runs it, and cleans up automatically.

To open the full-screen terminal workspace instead of printing help:

uvx --from git+https://github.com/pruthivithejan/r10n.git r10n

Search by automation name, category, or role. Select an automation to get a validated form, review the resolved inputs, and follow progress and generated files from the same workspace.

Key Action
/ Focus automation search
Arrow keys Move through matching automations
Enter Select the highlighted automation
Ctrl+P Open the command palette
Ctrl+C Cancel the active automation
Q Exit when focus is outside a text field

The form is generated from the same typed automation definition used by the execution worker, so values are validated before the review screen appears. Long-running work is isolated from the interface and reports logs, progress, results, and artifact paths back to the workspace.


Available Commands

List all available automations:

uvx --from git+https://github.com/pruthivithejan/r10n.git r10n --help

Output:

Usage: r10n [OPTIONS] COMMAND [ARGS]...

  r10n - Automate repetitive data and workflow tasks

Options:
  --help  Show this message and exit.

Commands:
  fill-pdfs     Fill PDF templates with data
  colors        Convert CSS colors to oklch() format
  contacts      Generate VCF contact cards from phone numbers
  email         Send bulk personalized emails
  images        Optimize and convert images to WebP

Quick Examples

Generate Contact Cards

uvx --from git+https://github.com/pruthivithejan/r10n.git r10n contacts \
  --input numbers.txt \
  --prefix Customer \
  --output customers.vcf

Optimize Images

uvx --from git+https://github.com/pruthivithejan/r10n.git r10n images \
  --input ./photos \
  --output ./optimized \
  --quality 85

Convert Colors to oklch

uvx --from git+https://github.com/pruthivithejan/r10n.git r10n colors \
  --file styles.css

Fill PDFs

uvx --from git+https://github.com/pruthivithejan/r10n.git r10n fill-pdfs \
  --config config.json \
  --recipients participants.csv

Send Bulk Emails

uvx --from git+https://github.com/pruthivithejan/r10n.git r10n email \
  --config email-config.json \
  --recipients recipients.csv \
  --body message.txt

Interactive Mode

There are two interactive modes. Run r10n by itself for the terminal workspace:

uvx --from git+https://github.com/pruthivithejan/r10n.git r10n

Run a specific command without flags for the classic step-by-step prompts:

uvx --from git+https://github.com/pruthivithejan/r10n.git r10n contacts

The CLI will guide you through each step:

╭─────────────────────────────────────────────────────────────╮
│                    📇 Contact Generator                      │
│         Generate VCF contact cards from phone numbers        │
╰─────────────────────────────────────────────────────────────╯

Step 1/3: Select input file
Enter path to file with phone numbers: numbers.txt

Step 2/3: Set contact name prefix
Enter prefix for contact names [Contact]: Customer

Step 3/3: Set output file
Enter output VCF file path [contacts.vcf]: customers.vcf

Summary:
  Input file: numbers.txt
  Prefix: Customer
  Output: customers.vcf

Proceed with contact generation? [y/n]: y

Creating Input Files

For most automations, you'll need to create input files first. Here are examples:

Phone Numbers (for contacts)

Create numbers.txt:

# Phone numbers (comments start with #)
0771234567
0781234567
+94791234567

Recipient List (for email)

Create recipients.csv:

Name,Email
John Doe,john@example.com
Jane Smith,jane@example.com
Support Team,support@company.org

CSV Data (for fill-pdfs)

Create participants.csv:

name,course,date
John Doe,Web Development,2025-01-15
Jane Smith,Data Science,2025-01-15

Tips

  1. Create an alias for frequent use:
    alias r10n='uvx --from git+https://github.com/pruthivithejan/r10n.git r10n'
    

Then run:

r10n contacts --help

  1. Use absolute paths when specifying files:

    uvx --from git+https://github.com/pruthivithejan/r10n.git r10n contacts \
      --input /Users/you/Desktop/numbers.txt \
      --output /Users/you/Desktop/contacts.vcf
    

  2. Check command help for all available options:

    uvx --from git+https://github.com/pruthivithejan/r10n.git r10n contacts --help
    


Troubleshooting

"Command not found: uvx"

Install uv first:

curl -LsSf https://astral.sh/uv/install.sh | sh

Then restart your terminal or run:

source ~/.bashrc  # or ~/.zshrc

"No such file or directory"

Make sure your input file exists and the path is correct:

ls -la numbers.txt

Network Issues

If you're behind a firewall or have slow internet, consider setting up locally instead.


Next Steps