AshKyd/ak-mailer

An email subscription service that monitors RSS feeds and sends email notifications to subscribers when new posts are published.

โ˜… 0Forks 0JavaScriptGitHub โ†—Compare

README

ak-mailer

An email subscription service that monitors RSS feeds and sends email notifications to subscribers when new posts are published.

  • ๐Ÿ”„ Automatically checks RSS feeds for new content
  • ๐Ÿ“ง Sends personalized emails to subscribers when new posts are found
  • ๐ŸŒ REST API for subscribing/unsubscribing users
  • ๐ŸŽ‰ Sends a welcome email to new subscribers
  • ๐Ÿ“ฎ Uses Mailgun API for reliable email delivery
  • โš™๏ธ Fully configurable via environment variables

Installation

  1. Clone the repository:

    git clone <repository-url>
    cd ak-mailer
  2. Install dependencies:

    npm install
  3. Create a .env file based on .env.example:

    cp .env.example .env
  4. Configure your environment variables

Usage

Starting the Server

To start the production server:

npm start

Admin endpoints

The admin endpoints can be enabled by setting the ADMIN_PASSWORD environment variable in your .env file.

Example usage with curl:

# Get database content
curl -H "Authorization: your-admin-password" http://localhost:3001/admin/db

# Send a test email to a subscriber
curl -H "Authorization: your-admin-password" http://localhost:3001/admin/test/[email protected]

Replace your-admin-password with the actual password set in your ADMIN_PASSWORD environment variable.

Contributors

AshKyd

Issues