blogpost-creator

1
0
Source

Create new blogposts from a template or linkposts using the hydrate command.

Install

mkdir -p .claude/skills/blogpost-creator && curl -L -o skill.zip "https://mcp.directory/api/skills/download/6068" && unzip -o skill.zip -d .claude/skills/blogpost-creator && rm skill.zip

Installs to .claude/skills/blogpost-creator

About this skill

Blog Post Creator

Create new blog posts for Xe's site using the hydrate command.

Usage

Invoke this skill when you want to create a new blog post. The skill will prompt you for:

  • Post type: blog, linkpost, note, talk, or xecast
  • Title: The title of your post (for linkposts, can auto-fetch from URL)
  • Description: A brief description/summary (for linkposts, can auto-fetch from URL)
  • Link URL: (required for linkposts) The URL this post should redirect to
  • Publication date: (optional, for linkposts can auto-extract from the page, defaults to today if not found)
  • Custom slug: (optional, for linkposts will auto-extract from URL basename if not provided)

What it does

  1. For linkposts: Extracts slug from URL basename if no custom slug provided (e.g., https://example.com/blog/my-post becomes "my-post")
  2. For other post types: Generates a URL-friendly slug from your title (or uses your custom slug)
  3. For linkposts: Can auto-fetch title, description, and publication date from the provided URL
  4. Validates that linkposts have a URL provided (prompts if missing)
  5. Runs go run ./cmd/hydrate <kind> <slug> with the appropriate parameters
  6. For linkposts: Updates the redirect_to field in the frontmatter with the provided URL
  7. For linkposts: Adds fetched summary to the post body if available
  8. Opens the created file in VS Code for editing
  9. Shows you the file location for reference

File structure

Blog posts are created in:

  • lume/src/blog/<year>/<slug>.mdx for blog and linkpost
  • lume/src/notes/<year>/<slug>.mdx for notes
  • lume/src/talks/<year>/<slug>.mdx for talks
  • lume/src/xecast/<year>/<slug>.mdx for xecast

Frontmatter templates

Each post type has its own frontmatter template:

Blog posts include hero image configuration:

---
title: ""
desc: ""
date: YYYY-MM-DD
hero:
  ai: ""
  file: ""
  prompt: ""
  social: false
---

Link posts include a redirect URL:

---
title: ""
date: YYYY-MM-DD
redirect_to: "https://example.com"
---

Other types (notes, talks, xecast) have simpler frontmatter:

---
title: ""
desc: ""
date: YYYY-MM-DD
---

Linkpost Special Features

Linkposts have enhanced functionality:

  1. Automatic slug extraction: If no custom slug is provided, the skill will extract the basename from the URL (e.g., https://example.com/blog/my-post becomes my-post)

  2. Auto-fetching content: The skill can automatically fetch the webpage to extract:

    • The page title (used as the post title)
    • A summary/description (added to the post body)
    • The publication date (used as the post date, defaults to today if not found)
    • This saves time and ensures accurate representation of the linked content

Use the extract-meta.js file in this folder to extract meta-information from webpages:

node extract-meta.js <url>
  1. URL handling: The skill handles redirects and will follow them to get the final content for title/description extraction

Example Linkpost Workflow

When creating a linkpost with a URL like https://anubis.techaro.lol/blog/2025/file-abuse-reports:

  1. Skill detects it's a linkpost with a URL
  2. Extracts slug "file-abuse-reports" from URL basename
  3. Fetches the webpage to get:
    • The actual title: "Taking steps to end traffic from abusive cloud providers"
    • A summary of the content for the post body
    • The publication date from the page (e.g., "2025-01-15")
  4. Creates the post with auto-generated slug, fetched title, and extracted date
  5. Adds the summary to the post body for context
  6. Updates the redirect_to field with the provided URL

Date Extraction Details

The skill will look for publication dates in various formats:

  • Meta tags: <meta property="article:published_time" content="2025-01-15">
  • JSON-LD structured data: "datePublished": "2025-01-15"
  • HTML5 semantic elements: <time datetime="2025-01-15">
  • Common date patterns in the page content
  • URL patterns: Extracts date from URL structure like /blog/2025/my-post

If no date is found, it defaults to today's date.

You might also like

flutter-development

aj-geddes

Build beautiful cross-platform mobile apps with Flutter and Dart. Covers widgets, state management with Provider/BLoC, navigation, API integration, and material design.

643969

drawio-diagrams-enhanced

jgtolentino

Create professional draw.io (diagrams.net) diagrams in XML format (.drawio files) with integrated PMP/PMBOK methodologies, extensive visual asset libraries, and industry-standard professional templates. Use this skill when users ask to create flowcharts, swimlane diagrams, cross-functional flowcharts, org charts, network diagrams, UML diagrams, BPMN, project management diagrams (WBS, Gantt, PERT, RACI), risk matrices, stakeholder maps, or any other visual diagram in draw.io format. This skill includes access to custom shape libraries for icons, clipart, and professional symbols.

591705

ui-ux-pro-max

nextlevelbuilder

"UI/UX design intelligence. 50 styles, 21 palettes, 50 font pairings, 20 charts, 8 stacks (React, Next.js, Vue, Svelte, SwiftUI, React Native, Flutter, Tailwind). Actions: plan, build, create, design, implement, review, fix, improve, optimize, enhance, refactor, check UI/UX code. Projects: website, landing page, dashboard, admin panel, e-commerce, SaaS, portfolio, blog, mobile app, .html, .tsx, .vue, .svelte. Elements: button, modal, navbar, sidebar, card, table, form, chart. Styles: glassmorphism, claymorphism, minimalism, brutalism, neumorphism, bento grid, dark mode, responsive, skeuomorphism, flat design. Topics: color palette, accessibility, animation, layout, typography, font pairing, spacing, hover, shadow, gradient."

318399

godot

bfollington

This skill should be used when working on Godot Engine projects. It provides specialized knowledge of Godot's file formats (.gd, .tscn, .tres), architecture patterns (component-based, signal-driven, resource-based), common pitfalls, validation tools, code templates, and CLI workflows. The `godot` command is available for running the game, validating scripts, importing resources, and exporting builds. Use this skill for tasks involving Godot game development, debugging scene/resource files, implementing game systems, or creating new Godot components.

340397

nano-banana-pro

garg-aayush

Generate and edit images using Google's Nano Banana Pro (Gemini 3 Pro Image) API. Use when the user asks to generate, create, edit, modify, change, alter, or update images. Also use when user references an existing image file and asks to modify it in any way (e.g., "modify this image", "change the background", "replace X with Y"). Supports both text-to-image generation and image-to-image editing with configurable resolution (1K default, 2K, or 4K for high resolution). DO NOT read the image file first - use this skill directly with the --input-image parameter.

452339

fastapi-templates

wshobson

Create production-ready FastAPI projects with async patterns, dependency injection, and comprehensive error handling. Use when building new FastAPI applications or setting up backend API projects.

304231

Stay ahead of the MCP ecosystem

Get weekly updates on new skills and servers.