| name | github-showcase |
|---|---|
| description | Generate LinkedIn and Facebook posts from any GitHub project as a styled Word document. Emoji-rich, detailed, copy-paste ready with embedded screenshots. Use when: "showcase my project", "create social media post", "promote my repo", "generate LinkedIn post for my GitHub project". |
Generate LinkedIn and Facebook posts for a GitHub project, saved as a styled Word document in the project's social-media-posts/ folder.
$ARGUMENTS— GitHub repo name (e.g.,Caffeinator) or full URL (e.g.,https://github.com/user/repo)
You are a developer content strategist creating engaging, emoji-rich social media posts. Your output is a Word document the user can open, copy, and paste directly into LinkedIn or Facebook.
Extract the repo owner and name from $ARGUMENTS. If only a name is given, detect the user's GitHub account via gh api user.
Run these commands in parallel to gather data:
gh api repos/{owner}/{repo}— repo metadata (description, language, stars, topics)gh api repos/{owner}/{repo}/readme --jq '.content' | base64 -d— full READMEgh api repos/{owner}/{repo}/releases/latest— latest release (if any)gh api repos/{owner}/{repo}/languages— language breakdown
Read the README carefully. Identify:
- The problem it solves (the "why")
- Key features (3-5 most impressive)
- Technical highlights (interesting implementation details, APIs used)
- Target audience (who would care)
- Unique selling point (what makes it different)
Check common project locations on the user's machine:
D:\Projects\{repo_name}\~/projects/{repo_name}/- Current working directory
If you cannot determine the local path, ask the user.
Look for existing screenshots/images in the project directory:
assets/folder (banner.png, screenshot.png, etc.)screenshots/folderdocs/images/folder- Any
.png,.jpg,.giffiles in common locations
Collect the paths of all found images — these will be embedded in the Word document.
Write content for LinkedIn and Facebook. Follow these rules strictly:
- Use emojis generously throughout (section headers, bullet points, transitions)
- NEVER start with "I'm excited to announce" or "Thrilled to share" — these get scrolled past
- Start with a hook: a problem statement, surprising fact, or relatable frustration
- Be DETAILED — this is not a teaser, it's a full showcase post (1200-2000 characters)
- Include the story: why you built it, what problem it solves, how it's different
- Include 4-6 feature bullet points with emojis
- Include a brief technical note (what stack, what APIs — keep it accessible)
- Include a personal reflection (what you learned, what surprised you)
- End with a CTA (try it, star it, give feedback, link)
- End with 4-6 relevant hashtags
- Professional but personal tone — tell the builder's story
- Use line breaks liberally (LinkedIn rewards scroll-stopping, airy formatting)
- Mention the GitHub link at the end (tip in the doc says to put it in the first comment)
- Hashtags: #opensource #github #buildinpublic #sideproject + language-specific
- Slightly more casual and conversational than LinkedIn
- Can be a bit more fun/personal — Facebook audiences respond to personality
- Include the GitHub link directly in the post body
- More emoji-forward than LinkedIn
- Hashtags: #coding #opensource #sideproject #developer + language-specific
Generate a short section with:
- What demo GIF to record (15-30 seconds, what workflow to show)
- What screenshots to attach when posting (which views/states)
- Social preview image suggestion (for GitHub repo settings, 1280x640)
- Write the content to a temporary file using this exact format:
===LINKEDIN===
(full LinkedIn post content here)
===FACEBOOK===
(full Facebook post content here)
===VISUAL_TIPS===
(visual content recommendations here)
-
Ensure
python-docxis installed (pip install python-docxif not). -
Save this temp file, then run the generator script that ships with this skill:
python <skill_scripts_dir>/showcase_generator.py \
--project-dir "<local_project_path>" \
--project-name "<ProjectName>" \
--content "<temp_content_file>" \
--github-url "https://github.com/{owner}/{repo}" \
--screenshots <path1> <path2> ...The script location depends on where the skill is installed:
- User-level:
~/.claude/skills/github-showcase/scripts/showcase_generator.py - Project-level:
.claude/skills/github-showcase/scripts/showcase_generator.py
-
Clean up the temp content file after generation.
-
Tell the user:
- The exact path to the generated Word document
- How many screenshots were embedded
- Remind them: "Open the file, copy the content for your platform, and paste it directly into your post composer. Attach the screenshots from the document or from your project's assets folder."
- The Word document goes in
{project_dir}/social-media-posts/— the script creates this folder automatically - The filename format is
{ProjectName}_Showcase_{YYYY-MM-DD}.docx - If screenshots exist in the project, ALWAYS embed them — visuals are critical for engagement
- Make the content copy-paste ready — no markdown syntax, no formatting marks, just plain text with emojis and line breaks
- The content should be DETAILED and CATCHY — not a bare summary. Think "viral developer post" energy.
- Requires
python-docx— prompt the user to install it if missing