Admin Interface

Guide to using the Fireship AI Blog admin interface for content management.

Overview

The admin interface provides a comprehensive dashboard for managing your blog content, including creating, editing, and publishing posts.

Accessing Admin

Web Interface

  1. Visit Fireship.ai
  2. Sign in to your account
  3. Navigate to DashboardBlog Admin
  4. Select your blog/campaign

Direct Integration

import { FireshipBlogAdmin } from 'fireship-ai-blog/admin';

export default function AdminPage() {
  return (
    <div className="min-h-screen">
      <FireshipBlogAdmin 
        apiKey="your-api-key"
        onSave={(post) => console.log('Post saved:', post)}
        onDelete={(postId) => console.log('Post deleted:', postId)}
      />
    </div>
  );
}

Features

Content Management

Post Creation
  • • Rich text editor with markdown support
  • • Image upload and management
  • • SEO optimization tools
  • • Category and tag management
Post Editing
  • • Live preview mode
  • • Version history
  • • Auto-save functionality
  • • Collaborative editing

Publishing Workflow

📁
File Upload
  • • Drag & drop interface
  • • Multiple file formats
  • • Automatic optimization
  • • CDN integration
📊
Analytics Dashboard
  • • Page views and engagement
  • • Popular content analysis
  • • Reader demographics
  • • Traffic sources

Post Management

Creating Posts

  1. Click "New Post" in the admin dashboard
  2. Add Title and meta description
  3. Write Content using the rich editor
  4. Add Media (images, videos)
  5. Set Categories/Tags
  6. Configure SEO settings
  7. Preview before publishing
  8. Publish or save as draft

Post Editor Features

# Rich Text Editing
- **Bold** and *italic* formatting
- Headers (H1-H6)
- Lists (ordered/unordered)
- Links and images
- Code blocks with syntax highlighting
- Tables and quotes
- Custom HTML support

# Media Integration
- Image galleries
- Video embeds
- Audio players
- File downloads
- Social media embeds

# SEO Tools
- Meta title optimization
- Description generation
- Keyword analysis
- Schema markup
- Open Graph tags

User Management

Team Collaboration

User Roles

Admin: Full access to all features
Editor: Create and edit content
Author: Create own content only
Contributor: Submit drafts for review
Viewer: Read-only access

Permissions

{
  "admin": ["create", "edit", "delete", "publish", "manage_users"],
  "editor": ["create", "edit", "publish"],
  "author": ["create", "edit_own"],
  "contributor": ["create_draft"],
  "viewer": ["read"]
}

API Integration

Admin API Endpoints

// Get all posts
GET /api/admin/posts
Authorization: Bearer your-admin-token

// Create new post
POST /api/admin/posts
{
  "title": "New Post Title",
  "content": "Post content...",
  "status": "draft",
  "category": "Technology"
}

// Update post
PUT /api/admin/posts/{id}
{
  "title": "Updated Title",
  "status": "published"
}

// Delete post
DELETE /api/admin/posts/{id}

Webhook Integration

// Configure webhooks for events
const webhookConfig = {
  url: 'https://yoursite.com/api/webhooks/blog',
  events: ['post.published', 'post.updated', 'post.deleted'],
  secret: 'your-webhook-secret'
};

// Handle webhook events
export async function POST(req: Request) {
  const event = await req.json();
  
  switch (event.type) {
    case 'post.published':
      // Trigger cache invalidation
      await revalidatePath('/blog');
      break;
    case 'post.updated':
      // Update search index
      await updateSearchIndex(event.data);
      break;
  }
}