SMTP-EDC is a powerful, feature-rich SMTP testing tool written in Go, similar to SWAKS (SWiss Army Knife for SMTP). It provides both a command-line interface and a modern desktop application built with Wails for comprehensive SMTP server testing and email diagnostics.
# Add the tap
brew tap asachs01/smtp-edc
# Install SMTP-EDC
brew install smtp-edc
go install github.com/asachs/smtp-edc/cmd/smtp-edc@latest
git clone https://github.com/asachs/smtp-edc.git
cd smtp-edc
go build -o smtp-edc cmd/smtp-edc/main.go # CLI version
# Install Wails (if not already installed)
go install github.com/wailsapp/wails/v2/cmd/wails@latest
# Build the desktop application
wails build
# Or for development
wails dev
# Basic SMTP connection test
./smtp-edc -server smtp.gmail.com -port 587 -username your@email.com -password yourpassword
# Send a test email
./smtp-edc -server smtp.gmail.com -port 587 -username your@email.com -password yourpassword \\
-from your@email.com -to recipient@example.com -subject "Test Email" -body "This is a test."
# Test with STARTTLS
./smtp-edc -server smtp.gmail.com -port 587 -starttls -username your@email.com -password yourpassword
./smtp-edc-ui
(or use wails dev
for development)SMTP-EDC supports configuration via:
server: smtp.gmail.com
port: 587
username: your@email.com
password: yourpassword
auth_type: PLAIN
starttls: true
skip_verify: false
templates:
test: "This is a test email from SMTP-EDC"
smtp-edc/
├── cmd/smtp-edc/ # CLI application entry point
├── main.go # Wails desktop application entry point
├── app.go # Wails backend service layer
├── frontend/ # React/TypeScript frontend for desktop app
├── internal/
│ ├── auth/ # Authentication implementations
│ ├── client/ # SMTP client logic
│ ├── config/ # Configuration management
│ ├── message/ # Message composition and templates
│ └── security/ # Security and logging features
├── docs/ # Comprehensive documentation
└── wails.json # Wails project configuration
# Install dependencies
go mod download
cd frontend && npm install
# Run desktop app in development mode
wails dev
# Build for production
wails build
# Run tests
go test ./...
The desktop application uses a carefully chosen color palette:
Comprehensive documentation is available in the docs/
directory:
git checkout -b feature/amazing-feature
)git commit -m 'Add some amazing feature'
)git push origin feature/amazing-feature
)This project is licensed under the MIT License - see the LICENSE file for details.
SMTP-EDC provides similar functionality to SWAKS with several enhancements:
For issues, feature requests, or questions:
This repository contains the Homebrew formula for SMTP-EDC, a powerful, cross-platform SMTP testing tool written in Go.
# Add the tap
brew tap asachs01/smtp-edc
# Install SMTP-EDC
brew install smtp-edc
After installation, you can use SMTP-EDC from the command line:
# Basic usage
smtp-edc --server smtp.example.com --from sender@example.com --to recipient@example.com
# With authentication
smtp-edc --server smtp.example.com --port 587 --from sender@example.com --to recipient@example.com \
--auth plain --username user --password pass
# With TLS/STARTTLS
smtp-edc --server smtp.example.com --port 587 --from sender@example.com --to recipient@example.com \
--starttls
# With debug mode
smtp-edc --server smtp.example.com --from sender@example.com --to recipient@example.com --debug
For more detailed usage information, visit the SMTP-EDC documentation.
To update SMTP-EDC to the latest version:
brew update
brew upgrade smtp-edc
If you encounter any issues:
brew update
brew upgrade smtp-edc
This tap is automatically updated when new releases are published to the main SMTP-EDC repository. The update process is handled by GitHub Actions.
If you need to update the formula manually:
curl -L https://github.com/asachs01/smtp-edc/archive/refs/tags/vX.Y.Z.tar.gz | shasum -a 256
Formula/smtp-edc.rb
with:
This tap is distributed under the MIT License.