Factory function that creates a newsletter provider instance (MailerLite, Kit, or Substack) based on configuration.
// Source: https://github.com/mperkins0155/llms-txt-hub | License: MIT | Copyright 2025 David Dias
// Provided via justclaw.it.com; keep this notice with the code.
import { KitProvider } from './providers/kit'
import { MailerLiteProvider } from './providers/mailerlite'
import { SubstackProvider } from './providers/substack'
import type { NewsletterProviderInterface, ProviderConfig } from './types'
export function createNewsletterProvider(config: ProviderConfig): NewsletterProviderInterface {
switch (config.provider) {
case 'mailerlite':
return new MailerLiteProvider(config)
case 'kit':
return new KitProvider(config)
case 'substack':
return new SubstackProvider(config)
default:
throw new Error(`Unsupported newsletter provider: ${(config as any).pro
... (truncated -- full source via MCP)
See the full source, get the GitHub permalink, and search 40K more like it.
Get a free API key