a email sender wrapper class


2143.0.32 years ago4 years agoMinified + gzip package size for @coolgk/email in KB



a javascript / typescript module

npm install @coolgk/email

a email sender wrapper class

Report bugs here: https://github.com/coolgk/node-utils/issues


import { Email } from '@coolgk/email';
// OR
// const { Email } = require('@coolgk/email');

const email = new Email({host: 'localhost'});

    subject: 'hello this is email subject',
    from: {
            name: 'Daniel Gong',
            email: 'daniel.k.gong@example.com'
    to: [
            name: 'Dan Go',
            email: 'dan@example.com'
    message: '<html><body><h1>test</h1>some message here <img src="cid:my-image" width="500" height="250"></body></html>',
    attachments: [
            path: '/tmp/test.png',
            name: 'screenshot.png'
            headers:{"Content-ID": "<my-image>"}
}).then((sentMessage) => {
}).catch((error) => {


Kind: global class
See: https://www.npmjs.com/package/emailjs#emailserverconnectoptions

new Email(options)

Param Type Default Description
options object
[options.user] string username for logging into smtp
[options.password] string password for logging into smtp
[options.host] string "'localhost'" smtp host
[options.port] string smtp port (if null a standard port number will be used)
[options.ssl] boolean boolean (if true or object, ssl connection will be made)
[options.tls] boolean boolean (if true or object, starttls will be initiated)
[options.domain] string domain to greet smtp with (defaults to os.hostname)
[options.authentication] Array.<string> authentication methods

email.send(options, [attachments]) ⇒ promise

Kind: instance method of Email
Returns: promise - - message sent

Param Type Description
options object
options.subject string email subject
[options.message] string html email message
options.to Array.<(string|object)> to email address
options.to[].name string name of the recipient
options.to[].email string email address of the recipient
[options.from] string | object see options.to
[options.cc] Array.<(string|object)> see options.to
[options.bcc] Array.<(string|object)> see options.to
[attachments] Array.<object> email attachments
attachments.path string file path
[attachments.name] string file name
[attachments.type] string file mime type
[attachments.method] string method to send attachment as (used by calendar invites)
[attachments.headers] object attachment headers, header: value pairs, e.g. {"Content-ID":""}

If you find any bugs or have a feature request, please open an issue on github!

The npm package download data comes from npm's download counts api and package details come from npms.io.