Claude-skill-registry hub-news-posts

This skill should be used when creating Galaxy Hub news posts, writing content for galaxyproject.org/news, or converting content to Galaxy Hub markdown format.

install
source · Clone the upstream repo
git clone https://github.com/majiayu000/claude-skill-registry
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/majiayu000/claude-skill-registry "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/data/hub-news-posts" ~/.claude/skills/majiayu000-claude-skill-registry-hub-news-posts && rm -rf "$T"
manifest: skills/data/hub-news-posts/SKILL.md
source content

Galaxy Hub News Posts

Create news posts for the Galaxy Project website (galaxyproject.org).

Directory Structure

Posts live in

/content/news/YYYY-MM-DD-slug-name/
:

content/news/2025-01-15-my-announcement/
├── index.md           # Main content file
├── hero.png           # Images in same directory
└── images/            # OR in images/ subdirectory
    └── figure1.png

Required Frontmatter

---
title: "Post Title"
date: "YYYY-MM-DD"
tease: "Short description for listing pages"
authors: "Author Name"
tags: [galaxy, training, tools]
subsites: [all]
---

Optional Frontmatter Fields

FieldDescription
main_subsite
Primary subsite (eu, freiburg, global)
supporters
Funding/support logos [elixir, denbi, eosc]
location.name
Event location
hide_tease
Set false to show tease on listing
autotoc
Enable/disable table of contents

Image Handling

Option A - Same directory (simpler):

![Description](./image.png)
![Description](image.png)

Option B - images/ subdirectory (for many images):

<img src="./images/figure1.png" />

CRITICAL: HTML img tags MUST use

./
prefix:

  • <img src="./images/x.png">
  • <img src="images/x.png">
    ❌ (build fails!)

Vega Charts

Use external URLs only (gists work well):

<vega-embed spec="https://gist.githubusercontent.com/user/id/raw/hash/chart.json" />

Create gist:

gh gist create chart.json --public

Local file paths do NOT work with vega-embed.

Styled HTML Tables

<table class="table">
  <tr>
    <td style="background: linear-gradient(135deg, #667eea, #764ba2); color: white; padding: 15px;">
      <strong>Value</strong><br/>label
    </td>
  </tr>
</table>

Supported styles:

  • background-color: #xxx
  • background: linear-gradient(...)
  • color
    ,
    padding
    ,
    border-radius
  • Emojis work (flags: 🇪🇺 🇺🇸 🇦🇺)

Workflow

  1. Create branch:
    git checkout -b news/post-slug
  2. Create directory:
    mkdir -p content/news/YYYY-MM-DD-slug-name
  3. Add index.md with frontmatter
  4. Add images (resize large ones first)
  5. For Vega charts: create gist, use raw URL
  6. Test locally:
    yarn develop
  7. Commit and push

Common Issues

ProblemSolution
Build fails on imagesUse
./
prefix in HTML img src
Vega chart blankMust use external URL (gist), not local file
Large images slow buildResize with PIL before committing

References

  • See
    references/formatting.md
    for detailed formatting guide
  • See
    examples/sample-post.md
    for complete template