@djangocfg/ext-newsletter
v1.0.27
Published
Newsletter and subscription management extension for DjangoCFG
Maintainers
Readme

📦 View in Marketplace • 📖 Documentation • ⭐ GitHub
@djangocfg/ext-newsletter
Newsletter subscription and campaign management extension for DjangoCFG.
Part of DjangoCFG — modern Django framework for production-ready SaaS applications.
Features
- 📧 Email Campaigns - Create, manage, and send email campaigns
- 📝 Subscription Management - Handle newsletter subscriptions
- 📊 Campaign Analytics - Track opens, clicks, and conversions
- 🎯 Audience Segmentation - Target specific subscriber groups
- 📋 List Management - Organize subscribers into lists
- 🚀 Automated Sending - Schedule and automate campaign delivery
Install
pnpm add @djangocfg/ext-newsletterUsage
Provider Setup
import { NewsletterProvider } from '@djangocfg/ext-newsletter/hooks';
export default function RootLayout({ children }) {
return (
<NewsletterProvider>
{children}
</NewsletterProvider>
);
}Managing Campaigns
import { useNewsletterContext } from '@djangocfg/ext-newsletter/hooks';
function CampaignsPage() {
const {
campaigns,
isLoadingCampaigns,
createCampaign,
sendCampaign,
} = useNewsletterContext();
const handleCreate = async () => {
await createCampaign({
subject: 'Monthly Newsletter',
content: '<h1>Hello!</h1>',
scheduled_at: new Date().toISOString(),
});
};
return (
<div>
<button onClick={handleCreate}>Create Campaign</button>
{campaigns.map(campaign => (
<div key={campaign.id}>
<h3>{campaign.subject}</h3>
<button onClick={() => sendCampaign(campaign.id)}>
Send Now
</button>
</div>
))}
</div>
);
}Newsletter Subscription Form
import { Hero } from '@djangocfg/ext-newsletter';
import { useNewsletterContext } from '@djangocfg/ext-newsletter/hooks';
function HomePage() {
const { subscribe } = useNewsletterContext();
return (
<Hero
title="Subscribe to our newsletter"
description="Get weekly updates delivered to your inbox"
showNewsletter={true}
onNewsletterSubmit={async (email) => {
await subscribe({ email });
}}
/>
);
}Components
Hero
Landing page hero section with integrated newsletter subscription form.
<Hero
title="Welcome to our platform"
description="Join thousands of subscribers"
primaryAction={{
label: 'Get Started',
href: '/signup',
}}
secondaryAction={{
label: 'Learn More',
href: '/about',
}}
showNewsletter={true}
onNewsletterSubmit={(email) => subscribe({ email })}
/>API Reference
Context Methods
campaigns- List of all campaignscreateCampaign(data)- Create new campaignupdateCampaign(id, data)- Update campaigndeleteCampaign(id)- Delete campaignsendCampaign(id)- Send campaign immediatelysubscribe(data)- Subscribe email to newsletterunsubscribe(data)- Unsubscribe email from newslettersubscriptions- List of all subscriptions
License
MIT
