npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@sakthi10122004/mailconfig

v1.2.13

Published

Ghost CMS mail transport configurator — no core file edits

Readme

Ghost MailConfig Gateway

** MailConfig** is a powerful, non-destructive side-car plugin for Ghost CMS that elegantly injects a fully visual Email Transport configuration dashboard directly into the native Ghost Admin panel—without ever altering a single line of Ghost's core source code.


Features

  • ** 100% Core Safe**: Utilizing a clever "Ghost Adapter" architectural hook, MailConfig registers itself natively on Ghost boot. It never overwrites, hacks, or damages core application files, keeping your environment completely update-safe.
  • ** Premium Visual Interface**: Ditch manual JSON editing. Enjoy a breathtaking, SaaS-styled frosted glass dashboard built directly into the Ghost admin settings modal.
  • ** Zero Configuration Setup**: Just type npm install and Ghost is instantly hooked. A smart postinstall script strictly validates the Ghost installation directory and automatically modifies the Ghost routing layer for you.
  • ** Dynamic Data Sync**: Live two-way binding. The dashboard safely parses and writes directly to your config.development.json or config.production.json seamlessly.
  • ** Smart State Management**: Includes an auto-detecting status indicator (red/green dot in the sidebar), secure password visibility toggles, and state-aware "dirty-checking" buttons that only activate when modifications happen.

Installation & Usage

1. Install the Plugin

Navigate to your active Ghost installation root folder (where your config.production.json lives) and run:

npm install @sakthi10122004/mailconfig@latest

Note: Our strict installer will verify that you are in a valid Ghost root folder. If you aren't, the installation will abort to protect your file system.

2. Restart Ghost

After a successful installation, gracefully restart your Ghost instance to allow the engine to mount the new MailConfig adapter:

ghost restart

3. Configure Your Mail Transport

  • Open your browser and navigate to your Ghost Admin interface.
  • Open your Settings sidebar.
  • Click the newly injected Mail Transport option near the bottom of the navigation pane.
  • The sleek modal will overlay. Select your provider (Custom SMTP or Mailgun), punch in your credentials, and hit Save Configuration.

That's it! Your Ghost environment is now configured for outgoing transactional mail.

4. Uninstallation

Modern versions of npm (v7+) no longer automatically run uninstall scripts for dependencies. Because MailConfig hooks into your configuration, you must manually run the cleanup command before uninstalling the package, otherwise Ghost will fail to boot due to a missing scheduling adapter.

To cleanly remove the plugin, run the following commands in your Ghost root directory:

# 1. Clean the configuration files
npx mailconfig-cleanup

# 2. Uninstall the package
npm uninstall @sakthi10122004/mailconfig

# 3. Restart Ghost
ghost restart

Architecture & Under the Hood

Ghost naturally hardcodes its mail management inside the server startup sequence. To bypass this, MailConfig operates in three distinct phases:

  1. The Post-Install Injector (scripts/postinstall.js): Runs during NPM install, locating your Ghost root folder and secretly appending "scheduling": { "active": "mailconfig" } into your active configuration.
  2. The Adapter Hook (src/adapter.js): When Ghost boots, it unknowingly invokes our Scheduling adapter. Our adapter hijacks the internal Express instance by walking the Node cache tree and mounts our custom API namespace /ghost/mailconfig/.
  3. The Frontend Injector (src/frontend-inject.js): By hooking http.Server.prototype.emit, the plugin intercepts the index.html payload being served to the Ghost Admin dashboard and dynamically injects a tiny JavaScript block. This script dynamically attaches the new Mail Transport button inside the Ghost frontend using DOM Mutation Observers.