Nonvoluntary Professional Mangling
    Share your code. npm Orgs help your team discover, share, and reuse code. Create a free org »

    dev-smtppublic

    NPM Dependencies DevDependencies

    dev-smtp

    A development SMTP server with storing mails as files.

    Installation

    npm install --save-dev dev-smtp
    

    Or globally:

    npm install -g dev-smtp
    

    Usage

    dev-smtp [options] <path>
    

    <path> - Path to directory to store emails (should exist).

    Options

    • -p, --port PORT — Port to listen for (default is 2525).
    • -v, --version — Current version.

    Example

    Run SMTP server on port 2525 and store emails in the ./mail directory:

    dev-smtp mail
    

    Run SMTP server on port 25 and store emails in /tmp:

    dev-smtp --port 25 /tmp
    

    Directory stucture

    Recieved emails are parsed and their content saved in directory:

    year-month-date-hours-minutes-seconds-milliseconds-counter-subject
    

    Where:

    • Date parts is a date of email, or current date if email has no date (in UTC timezone).
    • Counter is increased when server get two emails with the same date in a row.
    • Subject is a subject header of email.

    Directory contains this files:

    • raw.eml — is a raw email data.
    • headers.txt — is a parsed (decoded) headers of the email.
    • message.txt — is a plain text email body (if exists).
    • message.html — is an HTML email body (if exists).
    • attachment_* — is an attachments of the email.

    API

    To use in JS/TS code:

    import * as devSmtp from 'dev-smtp';
    // Or:
    // const devSmtp = require( 'dev-smtp' );
     
    devSmtp( '/tmp', 2525 );

    Interface of the function:

    /**
     * Run development SMTP server.
     * 
     * @param mailRootDir Path to directory to store emails.
     * @param port TCP port number.
     */
    function main( mailRootDir: string, port: number = 25 ): SMTPServer;

    Where SMTPServer is a server object from smtp-server package.

    Change Log

    View changelog.

    License

    MIT.

    install

    npm i dev-smtp

    Downloadsweekly downloads

    7

    version

    0.2.0

    license

    MIT

    repository

    githubgithub

    last publish

    collaborators

    • avatar