UNPKG

razon

Version:

Razon - Advanced CLI Email Client with browser automation, bulk sending, and high-performance Bun runtime

280 lines (193 loc) 7.9 kB
# Razon Email Client ## Table of Contents - [Overview](#overview) - [Installation](#installation) - [Features](#features) - [Quick Start](#quick-start) - [Configuration](#configuration) - [Advanced Features](#advanced-features) - [Command Reference](#command-reference) - [Platform Support](#platform-support) - [Troubleshooting](#troubleshooting) - [Security](#security) - [Support and Contributing](#support-and-contributing) ## Overview Razon is a powerful command-line email client designed for efficient and automated email workflows. It supports bulk email sending, advanced email automation, and integrated browser automation to streamline modern email tasks. ## Installation ### Global Installation Install Razon globally using npm to access the `razon` command from anywhere on your system: ```bash # Install globally via npm npm install -g razon # Verify installation razon --version ``` ### Alternative Installation Methods ```bash # Using yarn yarn global add razon # Using pnpm pnpm add -g razon # Using bun bun add -g razon ``` ### Post-Installation Setup After installation, initialize the configuration files: ```bash # Initialize configuration files in current directory razon init # Or initialize with force overwrite if files exist razon init -f ``` ### System Requirements - **Node.js**: Version 16.0.0 or higher - **Operating System**: Windows, macOS, or Linux - **Architecture**: AMD64 or ARM64 - **Memory**: Minimum 512MB RAM recommended - **Storage**: At least 100MB free space for configuration and logs ### Verification To verify that Razon is properly installed and accessible: ```bash # Check version razon version # Display help razon --help # Initialize and test configuration razon init razon summary ``` ## Features - High-performance execution for fast email processing - Bulk email sending to thousands of recipients - Support for multiple email protocols including SMTP and Outlook Web App (OWA) - Customizable email templates with dynamic content placeholders - Attachment support for files, images, and documents - Real-time progress tracking with detailed logging - Cross-platform compatibility: Windows, macOS, and Linux (AMD64 and ARM64) - Standalone executable with no external dependencies required after installation ## Quick Start 1. Initialize configuration files to set up your email client environment. 2. Configure SMTP or OWA settings for your email server. 3. Prepare a recipient list with email addresses. 4. Use commands to send emails, test sending, or manage your email lists. ## Configuration The configuration system in Razon allows you to customize and control various aspects of the email client to fit your needs. Configuration files are stored in the `config/` directory and include the following key components: - **SMTP Configuration (`smtp.jsonc`)**: Define your SMTP server details such as host, port, security settings, and authentication credentials. This enables Razon to connect and send emails through your chosen SMTP provider. - **Message Configuration (`message.jsonc`)**: Customize your email content including subject lines, sender information, and templates for both HTML and plain text emails. You can also specify the recipient list file and attachments here. - **Core Configuration (`core.jsonc`)**: Control operational parameters such as the number of concurrent email sends, delay between emails, retry attempts on failure, logging levels, and database file location. - **Attachments Configuration (`attachments.jsonc`)**: Manage files to be attached to your emails, specifying paths and display names. ### How to Use Configuration Files 1. **Locate the `config/` directory** in your project root where all configuration files reside. 2. **Edit the JSONC files** using a text editor to input your specific settings. JSONC supports comments for clarity. 3. **SMTP Setup**: Provide your SMTP server details in `smtp.jsonc` to enable email sending. 4. **Message Setup**: Define your email templates and recipient list in `message.jsonc`. Use placeholders in templates for dynamic content. 5. **Core Settings**: Adjust concurrency, delays, and retry logic in `core.jsonc` to optimize sending performance and reliability. 6. **Attachments**: Add any files you want to send along with your emails in `attachments.jsonc`. 7. **Save your changes** and run Razon commands to send emails using your customized configuration. This modular configuration approach allows flexible and powerful control over your email campaigns and automation workflows. ## Advanced Features - Dynamic email templates with placeholders for personalized content - Attachment management for sending various file types - Integrated browser automation for web-based email interactions ## Command Reference ### Email Sending Commands ```bash # Send emails to all recipients razon send # Send emails ignoring duplicate check (force send to already contacted recipients) razon send -f # Send emails to first N recipients razon send [count] # Send emails to first N recipients (force) razon send [count] -f # Send test emails (default: 5 recipients, or specify count) razon test [count] ``` ### Email Management Commands ```bash # Remove duplicate emails from file using regex extraction razon remove-dup [filepath] razon remove-dup [filepath] -o output.txt # Remove invalid emails from file razon remove-bad [filepath] razon remove-bad [filepath] --type syntax razon remove-bad [filepath] --type provider --domains gmail.com,yahoo.com razon remove-bad [filepath] -o clean-emails.txt # Remove emails that already exist in database razon remove-non-unique [filepath] razon remove-non-unique [filepath] -o new-emails.txt # Remove emails that don't exist in database (keep only existing) razon remove-unique [filepath] razon remove-unique [filepath] -o existing-only.txt ``` ### Statistics & Information Commands ```bash # Show total emails sent from each SMTP/OWA provider razon count-total # Show comprehensive system summary razon summary # Show specific summary sections razon summary --smtp razon summary --owa razon summary --config razon summary --database ``` ### Database Management Commands ```bash # Create a database backup with .razon extension razon backup [name] razon backup [name] -p /custom/path # Restore database from a .razon backup file razon restore <name> razon restore <name> -p /custom/path razon restore <name> --clear --verify # List available .razon backup files razon list-backups razon list-backups -p /custom/path # Clear entire database (DANGEROUS OPERATION) razon clear --confirm ``` ### System Management Commands ```bash # Initialize configuration files razon init # Force overwrite existing configuration razon init -f # Install Chromium browser for email automation razon install razon install --latest # Check for available updates razon check-for-update razon check-for-update -u # Update Razon to the latest version razon update razon update -f # Display version information razon version razon v # Show help razon --help ``` ### Global Options ```bash # Initialize configuration (can be used with any command) razon -i razon --init # Force operations (context-dependent) razon -f razon --force ``` ## Platform Support Razon supports major platforms and architectures, including Linux, Windows, and macOS on both AMD64 and ARM64. ## Troubleshooting - Common issues with SMTP authentication, browser downloads, and permissions - Detailed logs for monitoring and debugging ## Security - Never commit credentials to version control - Use environment variables for sensitive data - Regularly rotate email passwords - Monitor sending limits to avoid being flagged as spam ## Support and Contributing For issues, feature requests, and contributions, visit the project repository on GitHub. --- Built with ❤️ for maximum performance.