Razon - Advanced CLI Email Client with browser automation, bulk sending, and high-performance Bun runtime
npm install razon- Overview
- Installation
- Features
- Quick Start
- Configuration
- Advanced Features
- Command Reference
- Platform Support
- Troubleshooting
- Security
- Support and Contributing
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.
Install Razon globally using npm to access the razon command from anywhere on your system:
``bashInstall globally via npm
npm install -g razon
$3
`bash
Using yarn
yarn global add razonUsing pnpm
pnpm add -g razonUsing bun
bun add -g razon
`$3
After installation, initialize the configuration files:
`bash
Initialize configuration files in current directory
razon initOr initialize with force overwrite if files exist
razon init -f
`$3
- 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
$3
To verify that Razon is properly installed and accessible:
`bash
Check version
razon versionDisplay help
razon --helpInitialize 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.$3
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
$3
`bash
Send emails to all recipients
razon sendSend emails ignoring duplicate check (force send to already contacted recipients)
razon send -fSend emails to first N recipients
razon send [count]Send emails to first N recipients (force)
razon send [count] -fSend test emails (default: 5 recipients, or specify count)
razon test [count]
`$3
`bash
Remove duplicate emails from file using regex extraction
razon remove-dup [filepath]
razon remove-dup [filepath] -o output.txtRemove 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.txtRemove emails that already exist in database
razon remove-non-unique [filepath]
razon remove-non-unique [filepath] -o new-emails.txtRemove emails that don't exist in database (keep only existing)
razon remove-unique [filepath]
razon remove-unique [filepath] -o existing-only.txt
`$3
`bash
Show total emails sent from each SMTP/OWA provider
razon count-totalShow comprehensive system summary
razon summaryShow specific summary sections
razon summary --smtp
razon summary --owa
razon summary --config
razon summary --database
`$3
`bash
Create a database backup with .razon extension
razon backup [name]
razon backup [name] -p /custom/pathRestore database from a .razon backup file
razon restore
razon restore -p /custom/path
razon restore --clear --verifyList available .razon backup files
razon list-backups
razon list-backups -p /custom/pathClear entire database (DANGEROUS OPERATION)
razon clear --confirm
`$3
`bash
Initialize configuration files
razon initForce overwrite existing configuration
razon init -fInstall Chromium browser for email automation
razon install
razon install --latestCheck for available updates
razon check-for-update
razon check-for-update -uUpdate Razon to the latest version
razon update
razon update -fDisplay version information
razon version
razon vShow help
razon --help
`$3
`bash
Initialize configuration (can be used with any command)
razon -i
razon --initForce operations (context-dependent)
razon -f
razon --force
``Razon supports major platforms and architectures, including Linux, Windows, and macOS on both AMD64 and ARM64.
- Common issues with SMTP authentication, browser downloads, and permissions
- Detailed logs for monitoring and debugging
- 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
For issues, feature requests, and contributions, visit the project repository on GitHub.
---
Built with ❤️ for maximum performance.