KM Koushik 04d0f4b123 feat: support standard AWS env vars and default credential chain (#401)
* feat: support standard AWS env vars and default credential chain

Replace non-standard AWS_ACCESS_KEY / AWS_SECRET_KEY with the AWS-standard
AWS_ACCESS_KEY_ID / AWS_SECRET_ACCESS_KEY. The old names are kept as
fallbacks in the runtimeEnv for backward compatibility.

Both vars are now optional. When omitted, the credentials object is not
passed to SESv2Client, STSClient, or SNSClient — the AWS SDK then falls
back to its default provider chain (IAM roles, ECS task roles, instance
profiles, etc.), which is the recommended approach for cloud-native deployments.

Closes #316

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

* Potential fix for pull request finding

Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>

* refactor: extract shared getAwsCredentialOptions helper and add partial-config guard

- Move the credential spread logic into a single credentials.ts helper
  so SESv2Client, STSClient, and SNSClient all share one implementation
- Throw a clear error if only one of AWS_ACCESS_KEY_ID / AWS_SECRET_ACCESS_KEY
  is set, preventing silent fallback to the default provider chain with a
  half-configured environment

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

* fix: align AWS env vars in docker and docs

* fix: use alias import for AWS credentials helper

---------

Co-authored-by: purva <purvahk08@gmail.com>
Co-authored-by: Purva Kandalgaonkar <136103488+purva-8@users.noreply.github.com>
2026-05-17 21:23:28 +10:00
2025-06-02 12:02:45 +10:00
2026-01-18 20:50:54 +11:00
2024-06-24 08:21:37 +10:00
2025-09-03 08:21:55 +10:00
2025-10-12 06:18:04 +11:00
2024-04-22 12:46:53 +10:00
2024-05-25 08:45:27 +10:00
2024-03-15 09:17:00 +11:00
2026-03-28 08:57:51 +11:00
2025-09-03 08:21:55 +10:00

useSend Logo

The Open Source sending infrastructure.
Learn more »

Discord . Website · Issues

Join useSend on Discord GitHub Stars License Docker Automated build

About this project

As most of email products out there, useSend also uses Amazon SES under the hood to send emails. We provide an open and alternative way to send emails reliably and cheaply with a great dashboard. You can also use useSend manage contacts and send bulk emails(newsletter, product updates etc). We will take care of the subscriptions.

Currently we only support emails, but we plan to expand to other sending protocols like SMS, push notification and even whatsapp.

We are currently in beta!

Features

  • Add domains
  • Transactional Mails
  • Rest API
  • Dashboard (Delivered, opened, clicked, bounced)
  • Marketing email
  • SMTP support
  • Schedule API
  • Webhook support
  • Inbound email
  • BYO AWS credentials

Community and Next Steps 🎯

We're currently working on opening useSend for public beta.

  • Check out the first source code release in this repository and test it.
  • Tell us what you think in the Discussions.
  • Join the Discord server for any questions and getting to know to other community members.
  • the repository to help us raise awareness.
  • Spread the word on Twitter.
  • Fix or create issues, that are needed for the first production release.

Tech Stack

Email editor

Check out the editor code for here. Editor is possible only because of the amazing tools and libraries.

  • jsx-email - converts editor content to html
  • maily.to - useSend email editor is greatly inspired from maily.to
  • tiptap - editor core

Local Development

Follow our detailed guide to run useSend locally

https://docs.usesend.com/get-started/local

Docker

We provide a Docker container for useSend, which is published on both DockerHub and GitHub Container Registry.

DockerHub: https://hub.docker.com/r/usesend/usesend

GitHub Container Registry: https://ghcr.io/usesend/usesend

You can pull the Docker image from either of these registries and run it with your preferred container hosting provider.

Please note that you will need to provide environment variables for connecting to the database, redis, aws and so forth.

For detailed instructions on how to configure and run the Docker container, please refer to the Docker Docker README in the docker directory.

Self Hosting

Checkout the self-hosting guide to learn how to run useSend on your own infrastructure.

Self Hosting with Railway

Railway provides the quickest way to spin up useSend. Read the Railway self-hosting guide or deploy directly:

Deploy on Railway

Star History

Star History Chart

Sponsors

We are grateful for the support of our sponsors.

coderabbit.ai

Bronze Sponsors

Sayr

Other Sponsors

doras.to anaclumos miguilimzero tebayoso
S
Description
useSend Fork that uses my auth config
Readme 11 MiB
Languages
TypeScript 89.9%
MDX 4.1%
Python 3.7%
CSS 0.8%
PLpgSQL 0.6%
Other 0.8%