Skip to content

vivekuppal/marketer

Β 
Β 

Repository files navigation

πŸš€ Navam Marketer

Marketing Automation Made Simple β€” Truly Local-First

Transform your content into social promotions with AI β€” Copy, paste, post. No OAuth, no complexity.

Version Next.js TypeScript Tests License

Features β€’ Quick Start β€’ Tech Stack β€’ Philosophy β€’ Roadmap

Navam Marketer Banner


πŸ“– About

Navam Marketer is a marketing automation tool built for bootstrapped startup founders who need to maintain a social media presence without a marketing team. It uses AI to transform existing content into platform-optimized posts, with a simple copy-paste workflow that works with any social platform.

🎯 Built for Founders

No marketing team? No problem. Automate content repurposing with AI while maintaining complete control over what gets published.

πŸ’Ž MLP Philosophy

Minimum Lovable Product β€” not just viable, but delightful. Beautiful UI, smooth UX, and thoughtful details from day one.

πŸ”„ Human-in-Loop

Review and edit everything before publishing. AI generates, you approve. No auto-posting means no surprises.

🏠 True Local-First

Runs completely offline with SQLite. No OAuth, no external dependencies (except Claude for content generation). Your data stays local.


✨ Features

v1.0.0 Highlight: We've removed LinkedIn OAuth and auto-posting in favor of a simpler, more reliable copy-paste workflow. See What's New below.

Core Workflow

graph LR
    A[πŸ“„ Ingest URL] --> B[πŸ€– Generate with AI]
    B --> C[πŸ“‹ Copy Content]
    C --> D[πŸ“± Paste to Platform]
    D --> E[πŸ”— Track URL]
    E --> F[πŸ“Š Record Metrics]

    style A fill:#3b82f6
    style B fill:#8b5cf6
    style C fill:#10b981
    style D fill:#f59e0b
    style E fill:#ef4444
    style F fill:#06b6d4
Loading
πŸ”— Source Ingestion v0.1.0

Extract clean, readable content from any URL with a single click.

  • Intelligent Parsing β€” Powered by Mozilla Readability
  • Clean Output β€” Removes ads, clutter, and navigation
  • Database Storage β€” Saved for future campaign use
  • Source Management β€” Dedicated page to view and manage all sources
  • Multi-Source Support β€” Generate from any saved source

Example: Paste a Medium article URL, get clean markdown content ready for AI processing.

πŸ€– AI Content Generation v0.3.0

Generate platform-optimized posts with Claude AI (Sonnet 4.5).

Multi-Platform Generation

  • πŸ“± LinkedIn: Professional posts (3000 chars, 3-5 hashtags)
  • 🐦 Twitter: Punchy tweets (280 chars, 1-2 hashtags)
  • πŸ“ Blog: Introduction paragraphs (500 chars)

Customization Options

  • Tone Selection: Professional, Casual, Technical, Enthusiastic
  • Call-to-Action: Optional CTA for driving engagement
  • Source-Based: Generate from ingested content

Features

  • Batch generation for all platforms at once
  • Preview before saving to kanban
  • Tasks created in Draft status for review
  • Powered by Claude Sonnet 4.5 via Anthropic SDK
πŸ“‹ Campaign & Task Management v0.2.0

Organize your social media workflow with an intuitive Kanban board.

Campaign Management

  • Create unlimited campaigns with names and descriptions
  • Track task counts per campaign
  • Archive/restore campaigns for organization
  • Export/import campaigns as JSON
  • Duplicate campaigns with one click

Kanban Board

  • πŸ—‚οΈ 4 Status Columns: To Do β†’ Draft β†’ Scheduled β†’ Posted
  • πŸ–±οΈ Drag & Drop: Smooth task movement with visual feedback
  • ✏️ Inline Editing: Edit post content directly on cards
  • 🏷️ Platform Tags: LinkedIn, Twitter, Blog with color coding
  • πŸ”„ Real-Time Updates: Instant sync with database

Task Features

  • Platform-specific categorization
  • Scheduled date tracking (for planning, not auto-posting)
  • Delete with confirmation
  • Content preview with line clamping
πŸ“‹ Manual Copy-Paste Workflow v1.0.0 πŸ†•

Simple, reliable workflow that works with any social platform β€” no OAuth required.

Copy to Clipboard

  • πŸ“‹ One-Click Copy β€” Copy button on every task card
  • βœ… Toast Confirmation β€” "Post content copied to clipboard!"
  • 🎯 Works Everywhere β€” LinkedIn, Twitter, Facebook, Instagram, Threads, etc.

Manual Post URL Tracking

  • πŸ”— Add URL β€” Link icon on posted tasks opens URL input
  • πŸ’Ύ Save & Display β€” Published URLs saved and shown as "View Post" link
  • 🌐 Platform Agnostic β€” Works with any social platform URL
  • πŸ“Š Optional β€” Track URLs for reference, or skip if not needed

Benefits

  • βœ… No OAuth setup or token management
  • βœ… No API rate limits or failures
  • βœ… Works with platforms beyond LinkedIn/Twitter
  • βœ… Review post on platform before publishing
  • βœ… Platform updates won't break your workflow
  • βœ… Better privacy β€” no stored credentials

Workflow Example

1. Generate content with AI
2. Click copy button on task card
3. Open LinkedIn/Twitter/etc.
4. Paste content (Cmd+V / Ctrl+V)
5. Edit and publish manually
6. (Optional) Copy post URL and add to task
7. (Optional) Record engagement metrics
πŸ“Š Performance Dashboard v0.6.0

Track your social media engagement with real-time metrics and beautiful visualizations.

KPI Cards

  • πŸ“Š Total Posts: Count of published content
  • πŸ‘† Total Clicks: Link clicks via tracking
  • ❀️ Total Likes: Engagement metrics
  • πŸ”„ Total Shares: Content sharing stats

Engagement Chart

  • πŸ“ˆ Line chart showing metrics over last 30 days
  • Multiple data series (clicks, likes, shares)
  • Interactive tooltips and legend
  • Responsive design for all screen sizes

Manual Metric Recording v0.7.3

  • πŸ“Š Record Metrics Dialog: Click-to-open interface on posted tasks
  • ⚑ Quick Actions: One-click +1 buttons for likes, shares, comments, clicks
  • πŸ“ Custom Entry: Form for bulk metric recording
  • 🎨 Visual Display: Color-coded badges with icons on kanban cards
  • πŸ”„ Real-Time Updates: Metrics refresh automatically after recording

Link Click Tracking

  • Redirect tracker: /r/{taskId}?url={destination}
  • Automatic click recording
  • Real-time dashboard updates
  • Easy integration in social posts
🎯 Additional Features (Click to expand)

Navigation & UX

  • Unified Navigation v0.7.2 β€” Breadcrumb trail, active states, workflow clarity
  • Onboarding Hints v0.11.1 β€” Dismissible, contextual guidance for first-time users
  • Empty States v0.11.0 β€” Actionable prompts when campaigns/sources are empty
  • Toast Notifications v0.10.0 β€” Elegant feedback with Sonner

Data Management

  • Campaign Archive v0.11.2 β€” Archive/restore campaigns, soft delete
  • Export/Import v0.12.1 β€” JSON export/import for backup and portability
  • Campaign Duplication v0.12.2 β€” One-click campaign copying with intelligent task reset
  • Database Migrations v0.12.0 β€” Version-controlled schema with Prisma Migrate

Developer Experience

  • 279 Tests β€” 100% passing, comprehensive integration & component tests
  • TypeScript β€” Full type safety across the entire codebase
  • API Routes β€” RESTful conventions, clean architecture
  • Hot Reload β€” Fast development with Next.js 15

πŸ†• What's New in v1.0.0

Major Release: This is a breaking change that removes OAuth complexity and embraces simplicity.

βœ… Added

  • πŸ“‹ Copy Button β€” One-click clipboard copy on all task cards
  • πŸ”— Manual URL Tracking β€” Add published post URLs for reference
  • 🌐 Platform Agnostic β€” Works with ANY social platform, not just LinkedIn
  • 🎯 Simplified Workflow β€” No auth, no scheduler, no complexity

❌ Removed (Breaking Changes)

  • πŸ” LinkedIn OAuth β€” No more token management or refresh logic
  • ⏰ Auto-Posting β€” No automatic posting to social platforms
  • πŸ—„οΈ User Model β€” No OAuth credential storage
  • πŸ“… Scheduler β€” No background job processing

🎨 Philosophy Shift

Before v1.0.0:

Configure OAuth β†’ Connect LinkedIn β†’ Schedule β†’ Auto-post β†’ Hope it works

After v1.0.0:

Copy β†’ Paste β†’ Post β†’ Done ✨

Why This Change?

  1. Simpler: No OAuth setup, no token errors, no API failures
  2. More Reliable: Platform updates won't break functionality
  3. Better Privacy: No credentials stored, no external dependencies
  4. Platform Flexible: Works with LinkedIn, Twitter, Facebook, Instagram, Threads, etc.
  5. Local-First: True offline capability (except AI generation)

πŸ“– See backlog/release-1.0.0.md for complete details and migration guide.


πŸš€ Quick Start

Prerequisites

  • Node.js 18 or higher
  • npm (or pnpm)
  • Anthropic API Key (for AI content generation)

Installation

# Clone the repository
git clone https://github.com/yourusername/navam-marketer.git
cd navam-marketer

# Install dependencies (use --legacy-peer-deps for React 19 RC)
npm install --legacy-peer-deps

# Set up environment variables
cp .env.example .env
# Edit .env and add your ANTHROPIC_API_KEY

# Set up the database (run migrations)
npm run db:push

# Start the development server
npm run dev

πŸŽ‰ That's it! Open http://localhost:3000 to get started.


πŸ’‘ Usage Guide

Step 1: Ingest Content

  1. Navigate to Sources page
  2. Click Add Source button
  3. Paste any blog or article URL
  4. Click Fetch to extract content
  5. View cleaned, readable text

Supported URLs:

  • Medium articles
  • Product pages
  • Blog posts
  • News articles
  • Documentation
Example:
https://medium.com/@user/
article-about-product-launch

Output:
βœ“ Clean markdown content
βœ“ Saved to database
βœ“ Ready for AI generation

Step 2: Generate Posts with AI

  1. Select a campaign (or create one)
  2. Click Generate with Claude button
  3. Select source from dropdown
  4. Choose platforms (LinkedIn, Twitter, Blog)
  5. Select tone and add optional CTA
  6. Click Generate and wait for AI
  7. Review generated content
  8. Save tasks to kanban board
AI generates:
βœ“ LinkedIn (professional)
βœ“ Twitter (concise)
βœ“ Blog intro (engaging)

All optimized for:
- Character limits
- Platform conventions
- Hashtag best practices

Step 3: Copy & Post Manually

  1. Find task in Draft column
  2. Click Copy button (πŸ“‹ icon)
  3. Open LinkedIn/Twitter/etc.
  4. Paste content (Cmd+V / Ctrl+V)
  5. Edit as needed on platform
  6. Publish manually
  7. Drag task to Posted column
  8. (Optional) Click link icon to add post URL
  9. (Optional) Record metrics (likes, shares, etc.)
Workflow:
Draft β†’ Copy β†’ Paste β†’ Post

Benefits:
βœ“ Review on platform
βœ“ Edit before posting
βœ“ No API failures
βœ“ Works everywhere

Step 4: Track Performance

  1. Switch to Overview tab
  2. View KPI cards (posts, clicks, likes, shares)
  3. Check engagement chart (last 30 days)
  4. Click Record Metrics on posted tasks
  5. Use quick actions (+1 Like, +1 Share)
  6. Or enter custom metrics manually
Metrics:
πŸ“Š Total Posts: 42
πŸ‘† Total Clicks: 1,247
❀️ Total Likes: 856
πŸ”„ Total Shares: 124

Chart:
πŸ“ˆ Engagement over time

πŸ› οΈ Tech Stack

Frontend

Next.js React TypeScript Tailwind CSS

UI Components

shadcn/ui Radix UI dnd-kit Recharts

Backend

Prisma SQLite PostgreSQL

State Management

Zustand TanStack Query

AI & Tools

Anthropic Mozilla Readability JSDOM

Architecture

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚                 Next.js 15 App Router                       β”‚
β”‚                   (React 19 RC)                             β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚  Frontend                    β”‚  Backend                     β”‚
β”‚  β”œβ”€ shadcn/ui + Radix UI    β”‚  β”œβ”€ API Routes (RESTful)    β”‚
β”‚  β”œβ”€ Tailwind CSS            β”‚  β”œβ”€ Prisma ORM               β”‚
β”‚  β”œβ”€ @dnd-kit (Drag & Drop)  β”‚  β”œβ”€ SQLite (dev)             β”‚
β”‚  β”œβ”€ Recharts (Viz)          β”‚  β”œβ”€ PostgreSQL (prod)        β”‚
β”‚  β”œβ”€ Zustand (UI State)      β”‚  └─ Claude AI Integration    β”‚
β”‚  └─ TanStack Query (Future) β”‚                              β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

πŸ“ Project Structure

marketer/
β”œβ”€β”€ πŸ“ app/                        # Next.js App Router
β”‚   β”œβ”€β”€ πŸ“ api/                    # Backend API routes
β”‚   β”‚   β”œβ”€β”€ πŸ“ campaigns/          # Campaign CRUD + archive/export/import
β”‚   β”‚   β”œβ”€β”€ πŸ“ tasks/              # Task CRUD
β”‚   β”‚   β”œβ”€β”€ πŸ“ source/             # Content extraction
β”‚   β”‚   β”œβ”€β”€ πŸ“ generate/           # AI content generation
β”‚   β”‚   └── πŸ“ metrics/            # Performance tracking
β”‚   β”œβ”€β”€ πŸ“ campaigns/              # Campaign management page
β”‚   β”œβ”€β”€ πŸ“ sources/                # Source management page
β”‚   β”œβ”€β”€ πŸ“„ layout.tsx              # Root layout with navigation
β”‚   β”œβ”€β”€ πŸ“„ page.tsx                # Home page
β”‚   └── πŸ“„ globals.css             # Global styles + Tailwind
β”‚
β”œβ”€β”€ πŸ“ components/                 # React components
β”‚   β”œβ”€β”€ πŸ“ ui/                     # shadcn/ui primitives (Button, Dialog, etc.)
β”‚   β”œβ”€β”€ πŸ“„ kanban-board.tsx        # Drag-drop board container
β”‚   β”œβ”€β”€ πŸ“„ kanban-column.tsx       # Column (To Do, Draft, etc.)
β”‚   β”œβ”€β”€ πŸ“„ kanban-card.tsx         # Task card with copy/edit/delete
β”‚   β”œβ”€β”€ πŸ“„ navigation.tsx          # Unified navigation header
β”‚   β”œβ”€β”€ πŸ“„ dashboard-stats.tsx     # KPI cards
β”‚   β”œβ”€β”€ πŸ“„ engagement-chart.tsx    # Recharts visualization
β”‚   β”œβ”€β”€ πŸ“„ create-campaign-dialog.tsx
β”‚   β”œβ”€β”€ πŸ“„ create-task-dialog.tsx
β”‚   β”œβ”€β”€ πŸ“„ generate-content-dialog.tsx
β”‚   β”œβ”€β”€ πŸ“„ schedule-task-dialog.tsx
β”‚   β”œβ”€β”€ πŸ“„ record-metrics-dialog.tsx
β”‚   β”œβ”€β”€ πŸ“„ add-source-dialog.tsx
β”‚   β”œβ”€β”€ πŸ“„ source-card.tsx
β”‚   β”œβ”€β”€ πŸ“„ source-details-dialog.tsx
β”‚   └── πŸ“„ onboarding-hint.tsx
β”‚
β”œβ”€β”€ πŸ“ lib/                        # Utilities & helpers
β”‚   β”œβ”€β”€ πŸ“„ prisma.ts               # Database client singleton
β”‚   β”œβ”€β”€ πŸ“„ store.ts                # Zustand state management
β”‚   β”œβ”€β”€ πŸ“„ utils.ts                # Helper functions (cn, etc.)
β”‚   β”œβ”€β”€ πŸ“„ onboarding.ts           # Hint dismissal persistence
β”‚   └── πŸ“„ test-utils.ts           # Test helpers
β”‚
β”œβ”€β”€ πŸ“ prisma/                     # Database
β”‚   β”œβ”€β”€ πŸ“„ schema.prisma           # Schema definition
β”‚   β”œβ”€β”€ πŸ“ migrations/             # Migration history
β”‚   └── πŸ“„ dev.db                  # SQLite database (local)
β”‚
β”œβ”€β”€ πŸ“ __tests__/                  # Test suite
β”‚   β”œβ”€β”€ πŸ“ integration/            # Integration tests (279 tests)
β”‚   └── πŸ“ components/             # Component tests
β”‚
β”œβ”€β”€ πŸ“ backlog/                    # Project planning
β”‚   β”œβ”€β”€ πŸ“„ active.md               # Development roadmap
β”‚   β”œβ”€β”€ πŸ“„ issues.md               # Issue tracking
β”‚   └── πŸ“„ release-*.md            # Release notes (v0.1.0 - v1.0.0)
β”‚
β”œβ”€β”€ πŸ“„ CLAUDE.md                   # AI assistant instructions
β”œβ”€β”€ πŸ“„ README.md                   # This file
β”œβ”€β”€ πŸ“„ package.json                # Dependencies & scripts
β”œβ”€β”€ πŸ“„ tsconfig.json               # TypeScript config
β”œβ”€β”€ πŸ“„ tailwind.config.ts          # Tailwind config
β”œβ”€β”€ πŸ“„ next.config.mjs             # Next.js config
└── πŸ“„ .env.example                # Environment variables template

πŸ”§ Available Scripts

Development

Command Description
npm run dev Start development server on localhost:3000
npm run build Build optimized production bundle
npm start Start production server
npm run lint Run ESLint for code quality

Testing

Command Description
npm test Run all 279 tests
npm run test:watch Run tests in watch mode
npm run test:coverage Generate test coverage report

Database

Command Description
npm run db:push Push schema changes (development)
npm run db:generate Regenerate Prisma client
npm run db:migrate Create & apply migration
npm run db:migrate:deploy Apply migrations (production/CI)
npm run db:migrate:reset Reset database & reapply all migrations
npm run db:studio Open Prisma Studio GUI

πŸ“– For migration workflow details, see docs/migrations.md


πŸŽ“ Philosophy

MLP (Minimum Lovable Product)

We're not building an MVP β€” we're building an MLP:

✨ Delight

Beautiful UI and smooth UX from day one, not an afterthought.

πŸ‘€ Human-in-Loop

Review before publish, always. AI generates, you approve.

🎯 Focused

Do less, but do it exceptionally well. Quality over features.

🏠 Local-First

Works offline, deploys globally. Your data stays yours.

Design Principles

  1. Progressive Disclosure β€” Show what matters, hide complexity until needed
  2. Instant Feedback β€” Loading states, error messages, toast confirmations
  3. Type Safety β€” Full TypeScript coverage for reliability
  4. Component Reusability β€” DRY with shadcn/ui primitives
  5. Simplicity Over Automation β€” Manual control beats complex automation

v1.0.0 Philosophy

"Perfection is achieved, not when there is nothing more to add, but when there is nothing left to take away." β€” Antoine de Saint-ExupΓ©ry

We removed OAuth, auto-posting, and scheduling because:

  • Complexity β‰  Value β€” Simple workflows are more reliable
  • Control > Convenience β€” Manual posting gives you control
  • Privacy Matters β€” No credentials stored = better security
  • Platform Agnostic β€” Works with ANY social platform

🎯 Roadmap

βœ… Completed Releases

View All 18 Releases (v0.1.0 - v1.0.0)
  • v0.1.0 β€” Source Ingestion (Mozilla Readability)
  • v0.2.0 β€” Campaign & Task Management (Kanban)
  • v0.3.0 β€” Content Generation with Claude AI
  • v0.4.0 β€” Scheduling Interface
  • v0.5.0 β€” Smooth Drag-and-Drop Animations
  • v0.6.0 β€” Performance Dashboard & Analytics
  • v0.7.0 β€” Unified Campaign Manager
  • v0.7.1 β€” Source Management Page
  • v0.7.2 β€” Unified Navigation System
  • v0.7.3 β€” Manual Metrics Recording UI
  • v0.8.0 β€” Streamlined Navigation & Source Management
  • v0.8.1 β€” Fix Add Source Button Bug
  • v0.9.0 β€” Streamlined Generate from Source Workflow
  • v0.10.0 β€” Enhanced Source Fetch UX (Toast Notifications)
  • v0.11.0 β€” Improved Campaign Workflow Clarity
  • v0.11.1 β€” Dismissible Onboarding Hints
  • v0.11.2 β€” Campaign Archive Management
  • v0.12.0 β€” Database Migrations Setup
  • v0.12.1 β€” Data Export/Import
  • v0.12.2 β€” Campaign Duplication
  • v0.13.0 β€” LinkedIn API Integration (removed in v1.0.0)
  • v0.13.1 β€” LinkedIn OAuth Configuration Fix (removed in v1.0.0)
  • v0.14.0 β€” User-Owned LinkedIn OAuth Credentials (removed in v1.0.0)
  • v0.14.1 β€” LinkedIn Token Auto-Refresh (removed in v1.0.0)
  • v1.0.0 β€” Manual Copy-Paste Workflow (MAJOR RELEASE)

πŸ“… Planned Features

v1.1.0 β€” Post Analytics Without OAuth

Goal: Track engagement metrics without requiring OAuth authentication.

Planned Features:

  • CSV/JSON import for bulk metrics
  • Metrics import from platform analytics exports
  • Optional browser extension for auto-tracking
  • Improved manual metrics entry workflow

See: Issue #9 in backlog/issues.md

v2.0.0 β€” Agentic System (Future)

Goal: Intelligent AI orchestration with model routing.

Planned Features:

  • LangGraph workflow implementation
  • Model routing (Claude Haiku for speed, Sonnet for quality)
  • Agent decision logging
  • Stream progress updates to UI

Status: Planning stage

πŸ“– See backlog/active.md for detailed specifications.


πŸ§ͺ Testing

Test Suite: 279 tests, 100% passing

# Run all tests
npm test

# Watch mode for development
npm run test:watch

# Generate coverage report
npm run test:coverage

Test Coverage

  • Integration Tests: 18 test files covering all API routes and workflows
  • Component Tests: UI component functionality and accessibility
  • Manual Posting Workflow: 17 comprehensive tests for copy-paste workflow
  • Database Operations: Real Prisma client, actual SQLite database
  • Execution Time: < 3 seconds for full suite

Philosophy: Integration over unit tests. Test real database operations, not mocks.


πŸ“Š Project Stats

Metric Count
Total Releases 18
API Routes 11
React Components 26
Database Models 4
Test Files 18
Tests Passing 279 (100%)
Lines of Code ~11,800
Dependencies Production-ready stack

🀝 Contributing

This is currently a private project. For questions or feedback, please contact the development team.

For Developers

If you're working on this codebase:

  1. Read CLAUDE.md for AI assistant instructions
  2. Follow the MLP philosophy and design principles
  3. Write tests for all new features (integration tests preferred)
  4. Update backlog/active.md with progress
  5. Create release notes in backlog/release-X.Y.Z.md

πŸ“„ License

Private β€” All rights reserved.


πŸ™ Acknowledgments

Built with modern tools from the open-source community:

Next.js

Next.js

The React Framework

shadcn/ui

shadcn/ui

Beautiful components

Prisma

Prisma

Next-gen ORM

dnd-kit

dnd-kit

Modern drag & drop

Tailwind

Tailwind CSS

Utility-first CSS

Zustand

Zustand

State management

Special Thanks:

  • Anthropic β€” Claude AI for content generation
  • Mozilla β€” Readability for content extraction
  • Vercel β€” Hosting and deployment platform
  • The entire open-source community

πŸ“ž Support

Need Help?

πŸ“– Check backlog/active.md for development roadmap

πŸ“ Review CLAUDE.md for project guidelines

πŸ› Found a bug? Check backlog/issues.md



v1.0.0 β€” Made with ❀️ for bootstrapped founders

"Simplicity is the ultimate sophistication."

Star this repo

About

Marketer is a multi-agent reference implementation for online marketing workflows. It is built using latest vibe coding techniques including Claude Code Skills, Subagents, Plugins and more.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • TypeScript 86.4%
  • Python 12.8%
  • Other 0.8%