# Campaigns App Improvements - Part 2
## Additional Features (Continued)
### 11. Drip Campaign Automation
**What:** Multi-step automated email sequences
**Implementation:**
```html
```
### 13. Campaign Duplication
**What:** Clone existing campaigns for quick setup
**Implementation:**
```javascript
async function duplicateCampaign(campaignId) {
const response = await fetch(`/api/crm/campaigns/${campaignId}`);
const campaign = await response.json();
// Modify name
campaign.name = `${campaign.name} (Copy)`;
campaign.status = 'draft';
delete campaign.id;
delete campaign.created_at;
// Create new campaign
const newCampaign = await fetch('/api/crm/campaigns', {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify(campaign)
});
// Refresh list
htmx.ajax('GET', '/api/crm/campaigns', '#campaignsList');
}
```
### 14. Campaign Scheduling Calendar
**What:** Visual calendar for scheduled campaigns
**Implementation:**
```html