knowledge/technology/applications/cli/pop.md
2024-09-04 12:50:38 +02:00

79 lines
3.8 KiB
Markdown
Raw Permalink Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

---
obj: application
repo: https://github.com/charmbracelet/pop
rev: 2024-05-27
---
# pop
Pop is a tool for sending [emails](../../internet/eMail.md) from your terminal.
![Pop](./pop.avif)
## Usage
Usage: `pop [options]`
| Option | Environment Variable | Description |
| ------------------------------ | -------------------------------- | ------------------------------------------------- |
| `-a, --attach strings` | - | [Email](../../internet/eMail.md)'s attachments |
| `--bcc strings` | - | BCC recipients |
| `-b, --body string` | - | [Email](../../internet/eMail.md)'s contents |
| `--cc strings` | - | CC recipients |
| `-f, --from string` | `$POP_FROM` | [Email](../../internet/eMail.md)'s sender |
| `--preview` | - | Preview the [email](../../internet/eMail.md) |
| `-r, --resend.key string` | `$RESEND_API_KEY` | API key for Resend.com |
| `-x, --signature string` | `$POP_SIGNATURE` | Signature |
| `-e, --smtp.encryption string` | `$POP_SMTP_ENCRYPTION` | Encryption type |
| `-H, --smtp.host string` | `$POP_SMTP_HOST` | Host of [SMTP](../../internet/SMTP.md) server |
| `-i, --smtp.insecure` | `$POP_SMTP_INSECURE_SKIP_VERIFY` | Skip TLS verification |
| `-p, --smtp.password string` | `$POP_SMTP_PASSWORD` | Password of [SMTP](../../internet/SMTP.md) server |
| `-P, --smtp.port int` | `$POP_SMTP_PORT` | Port of [SMTP](../../internet/SMTP.md) server |
| `-U, --smtp.username string` | `$POP_SMTP_USERNAME` | Username of [SMTP](../../internet/SMTP.md) server |
| `-s, --subject string` | - | [Email](../../internet/eMail.md)'s subject |
| `-t, --to strings` | - | Recipients |
| `-u, --unsafe` | - | Allow unsafe [HTML](../../internet/HTML.md) |
## Text-based User Interface
Launch the TUI
```shell
pop
```
## Command Line Interface
```shell
pop < message.md \
--from "me@example.com" \
--to "you@example.com" \
--subject "Hello, world!" \
--attach invoice.pdf
```
To use `pop`, you will need a `RESEND_API_KEY` or configure an [`SMTP`](../../internet/SMTP.md) host.
You can grab one from: [https://resend.com/api-keys](https://resend.com/api-keys).
### Resend Configuration
To use the resend delivery method, set the `RESEND_API_KEY` environment variable.
```shell
export RESEND_API_KEY=$(pass RESEND_API_KEY)
```
### [SMTP](../../internet/SMTP.md) Configuration
To configure `pop` to use [`SMTP`](../../internet/SMTP.md), you can set the following [environment variables](../../linux/Environment%20Variables.md).
```shell
export POP_SMTP_HOST=smtp.gmail.com
export POP_SMTP_PORT=587
export POP_SMTP_USERNAME=pop@charm.sh
export POP_SMTP_PASSWORD=hunter2
```
### Environment
To avoid typing your `From:`  email address, you can also set the `POP_FROM` environment to pre-fill the field anytime you launch `pop`.
```shell
export POP_FROM=pop@charm.sh
export POP_SIGNATURE="Sent with [Pop](https://github.com/charmbracelet/pop)!"
```
> **Note**: If you wish to use a resend account without a custom domain, you can use `onboarding@resend.dev` to send emails.