Light weight email server for Node.js over HTTP(S) with REST API
Built as a solution for sending emails without any third party services or complex configurations.
- Send email over HTTP(S) with REST API
- Light weight
- Support multiple domains
- Easy to use, no extra services required
- CapRover support
docker build -t node-email-server .
docker run -p 25:25 -p 80:4321 -v /path/to/store/db:/app/storage -e PASSWORD=myDashboardPassword node-email-serverconst response = await fetch("https://email.my-domain.com/send", { method: 'POST', headers: { 'Content-Type': 'application/json', }, body: JSON.stringify({ password: "myPassword", from: 'example@email.my-domain.com', to: 'send@example.com', html: '<b>Hello World</b>', }), }); const fails = response.json(); if(fails.length === 0){ console.log('Email sent'); } else { console.log('Error sending email'); }
- Built using Node.js, Astro, and lowdb
- SMTP server using
smtp-serverpackage - Server components using
@astro-utils/formspackage - UI components using
rippleuipackage