Skill

Optimize GitHub profiles and READMEs for developer discovery

GitHub Presence is a skill that helps optimize GitHub profiles, READMEs, and project discoverability through structured templates, badge strategies, and search

Works with github

73
Spark score
out of 100
Updated 4 months ago
Version 1.0.0

Add to Favorites

Why it matters

Help developers and teams maximize their GitHub presence to attract users, contributors, and stars by optimizing profiles, project READMEs, and repository discoverability through strategic use of badges, topics, and awesome lists.

Outcomes

What it gets done

01

Structure project READMEs with hero examples, quick starts, and trust-signal badges

02

Create profile READMEs that showcase best projects and current work

03

Add GitHub topics and optimize repository metadata for search discoverability

04

Submit projects to awesome lists following curation guidelines

Install

Add it to your toolbox

Run in your project directory:

curl -fsSL https://spark.entire.vc/get/ag-github-presence | bash

Overview

GitHub Presence

GitHub profile and README optimization guidance with templates, badge strategies, and discoverability tactics When creating or improving GitHub READMEs, optimizing profiles, or increasing repository discoverability

What it does

GitHub Presence provides structured guidance for optimizing how projects and profiles are presented on GitHub. It delivers README templates, badge selection strategies, profile README structures, and discoverability tactics including GitHub topics and awesome list submissions. The skill treats GitHub as the primary technical evaluation point where developers decide whether to try a project.

When to use - and when NOT to

Use this skill when optimizing GitHub profiles, creating or improving project READMEs, increasing repository discoverability, selecting trust signal badges, or preparing for awesome list submissions. Trigger phrases include "GitHub README," "README optimization," "GitHub profile," "GitHub stars," "GitHub discoverability," "awesome lists," or "GitHub marketing."

Do NOT use this skill for non-GitHub code hosting platforms or when documentation lives entirely outside GitHub repositories.

Inputs and outputs

You provide your current GitHub presence (profile, pinned repositories, existing READMEs), project details (features, installation methods, usage examples), and discoverability goals.

You receive structured README templates with required and recommended sections, badge selection tables with specific services (shields.io, badgen.net, GitHub native badges), profile README structures, topic optimization strategies (up to 20 topics per repository), and awesome list submission workflows.

Badge services covered

The skill covers badge generation through:

  • Shields.io - most badge types including CI status, version, downloads, and license badges
  • Badgen.net - fast, minimal badge generation alternative
  • GitHub badges - native badges for actions and issues

Technical example

The skill provides a complete README structure template:

<div align="center">
  
  <h1>Project Name</h1>
  <p><strong>One compelling sentence explaining what this does.</strong></p>

  
  
  
</div>

### Why Project Name?

- **Feature 1** - Brief explanation
- **Feature 2** - Brief explanation
- **Feature 3** - Brief explanation

### Quick Start

```bash
npm install project-name

Badge examples for trust signals:


[](https://www.npmjs.com/package/package-name)
[](https://www.npmjs.com/package/package-name)
[](LICENSE)
[](https://discord.gg/invite)

Discoverability strategies

GitHub search considers repository name, description (350 characters), README content, topics (up to 20), and language. The skill provides topic strategies across technology (javascript, rust, python), framework (react, nextjs, django), use case (cli, api, testing), category (developer-tools, devops), and problem domains (authentication, caching).

For awesome lists, the skill outlines a five-step workflow: find relevant awesome lists, check requirements, ensure project meets criteria, submit PR following guidelines, and allow time for curation.

Source README

GitHub Presence

When to Use

Use this skill when you need when the user wants to optimize their GitHub profile, README, or project discoverability. Trigger phrases include "GitHub README," "README optimization," "GitHub profile," "GitHub stars," "GitHub discoverability," "awesome lists," or "GitHub marketing.".

GitHub is where developers evaluate your project before trying it. This skill covers README optimization, profile READMEs, discoverability through topics and awesome lists, and using GitHub features for marketing.


Before You Start

  1. Read .agents/developer-audience-context.md if it exists
  2. Audit your current GitHub presence (profile, pinned repos, READMEs)
  3. Understand: GitHub is often the first technical evaluation - optimize accordingly

README Structure

The Anatomy of a Great README

Section Purpose Required?
Logo/Banner Brand recognition, visual appeal Recommended
Badges Quick trust signals, status Recommended
One-liner What it does in one sentence Required
Hero example Immediate "what does it look like?" Highly recommended
Features Why use this over alternatives Required
Quick start Get running in < 2 minutes Required
Installation All installation methods Required
Usage Core usage examples Required
Documentation Link to full docs Required
Contributing How to contribute Recommended
License Legal clarity Required

README Template

<div align="center">
  <img src="logo.svg" alt="Project Name" width="200">
  <h1>Project Name</h1>
  <p><strong>One compelling sentence explaining what this does.</strong></p>

  
  <a href="https://github.com/org/repo/actions"><img src="https://github.com/org/repo/workflows/CI/badge.svg" alt="CI"></a>
  <a href="https://www.npmjs.com/package/name"><img src="https://img.shields.io/npm/v/name.svg" alt="npm version"></a>
  <a href="https://github.com/org/repo/blob/main/LICENSE"><img src="https://img.shields.io/badge/license-MIT-blue.svg" alt="License"></a>
  <a href="https://discord.gg/invite"><img src="https://img.shields.io/discord/123456789" alt="Discord"></a>

  <br>
  <br>

  <a href="https://docs.example.com">Documentation</a> •
  <a href="https://example.com">Website</a> •
  <a href="https://discord.gg/invite">Discord</a>
</div>

---

### Why Project Name?

- **Feature 1** — Brief explanation
- **Feature 2** — Brief explanation
- **Feature 3** — Brief explanation

### Quick Start

```bash
npm install project-name
import { thing } from 'project-name';

const result = thing.doSomething();
console.log(result);

Installation

npm

npm install project-name

yarn

yarn add project-name

pnpm

pnpm add project-name

Usage

Basic Example

// Code example with comments

Advanced Example

// More complex example

Documentation

Full documentation available at docs.example.com

Badges That Matter

Trust Signal Badges

Badge What it shows When to use
CI/Build status Code quality Always
Version Latest release Always for packages
License Legal clarity Always
Downloads/installs Adoption When impressive
Coverage Test quality If > 70%
Security Audit status If you have it

Community Badges

Badge Source Purpose
Discord members shields.io Show active community
GitHub stars shields.io Social proof
Contributors shields.io Open source health
Last commit shields.io Project activity

Badge Services

Service URL Best for
Shields.io shields.io Most badges
Badgen badgen.net Fast, minimal
GitHub badges Native Actions, issues

Badge Examples


![CI](https://github.com/org/repo/workflows/CI/badge.svg)


[![npm](https://img.shields.io/npm/v/package-name.svg)](https://www.npmjs.com/package/package-name)


[![Downloads](https://img.shields.io/npm/dm/package-name.svg)](https://www.npmjs.com/package/package-name)


[![License](https://img.shields.io/badge/license-MIT-blue.svg)](LICENSE)


[![Discord](https://img.shields.io/discord/SERVER_ID?color=7289da&logo=discord&logoColor=white)](https://discord.gg/invite)


[![GitHub stars](https://img.shields.io/github/stars/org/repo?style=social)](https://github.com/org/repo)

Profile README

Setting Up Profile README

  1. Create a repository with your username (e.g., github.com/yourname/yourname)
  2. Add a README.md file
  3. This displays on your profile page

Profile README Structure

#### Hi, I'm [Name] 👋

[One sentence about what you do]

#### What I'm Working On

- 🔭 Building [project] - [brief description]
- 🌱 Learning [technology]
- 💬 Ask me about [expertise areas]

#### Projects

| Project | Description | Stars |
|---------|-------------|-------|
| [Project 1](https://github.com/jonathimer/devmarketing-skills/tree/main/skills/github-presence/link) | Brief description | ![Stars](https://github.com/jonathimer/devmarketing-skills/tree/main/skills/github-presence/badge) |
| [Project 2](https://github.com/jonathimer/devmarketing-skills/tree/main/skills/github-presence/link) | Brief description | ![Stars](https://github.com/jonathimer/devmarketing-skills/tree/main/skills/github-presence/badge) |

#### Recent Blog Posts





#### Connect

[![Twitter](https://img.shields.io/badge/-Twitter-1DA1F2?style=flat&logo=twitter&logoColor=white)](https://twitter.com/handle)
[![LinkedIn](https://img.shields.io/badge/-LinkedIn-0077B5?style=flat&logo=linkedin&logoColor=white)](https://linkedin.com/in/handle)

#### GitHub Stats

![Your GitHub stats](https://github-readme-stats.vercel.app/api?username=yourusername&show_icons=true)

Profile README Best Practices

Do Don't
Keep it scannable Write paragraphs
Show your best projects List everything
Include current work Let it get stale
Add contact methods Make it hard to reach you
Show personality Be generic

Discoverability

GitHub Topics

Topics are how people find repositories. Optimize for search.

Topic strategy Example
Technology javascript, rust, python
Framework react, nextjs, django
Use case cli, api, testing
Category developer-tools, devops
Problem authentication, caching

Add topics: Repository settings → Topics (up to 20)

Search Optimization

GitHub search considers:

  1. Repository name — Include main keyword
  2. Description — 350 chars, keyword-rich
  3. README content — Full text indexed
  4. Topics — Category matching
  5. Language — Auto-detected

Awesome Lists

Getting on awesome lists drives traffic and credibility.

Step Action
1 Find relevant awesome lists (search "awesome + [topic]")
2 Check list requirements (quality, activity, docs)
3 Ensure your project meets criteria
4 Submit PR following list's guidelines
5 Be patient — curation takes time

Popular awesome lists for dev tools:

  • awesome-cli-apps
  • awesome-selfhosted
  • awesome-nodejs
  • awesome-python
  • awesome-go
  • awesome-rust
  • awesome-devops

GitHub Actions for Marketing

Automated README Updates

#### .github/workflows/readme-update.yml
name: Update README

on:
  schedule:
    - cron: '0 0 * * *'  # Daily
  workflow_dispatch:

jobs:
  update:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4

      # Example: Update blog post list
      - uses: gautamkrishnar/blog-post-workflow@master
        with:
          feed_list: "https://yourblog.com/feed"

      - name: Commit changes
        run: |
          git config --local user.email "action@github.com"
          git config --local user.name "GitHub Action"
          git add -A
          git diff --quiet && git diff --staged --quiet || git commit -m "Update README"
          git push

Metrics and Stats

#### Auto-update GitHub stats image
- uses: lowlighter/metrics@latest
  with:
    token: ${{ secrets.METRICS_TOKEN }}
    filename: github-metrics.svg

Release Announcements

#### Tweet on new release
name: Release Announcement
on:
  release:
    types: [published]

jobs:
  announce:
    runs-on: ubuntu-latest
    steps:
      - name: Tweet
        uses: ethomson/send-tweet-action@v1
        with:
          status: "🚀 ${{ github.repository }} ${{ github.event.release.tag_name }} released! ${{ github.event.release.html_url }}"
          consumer-key: ${{ secrets.TWITTER_CONSUMER_KEY }}
          # ... other secrets

GitHub Sponsors

Setting Up Sponsors

  1. Join GitHub Sponsors (github.com/sponsors)
  2. Create compelling tier descriptions
  3. Set up funding.yml in repos

funding.yml example:

github: [yourusername]
patreon: yourpatreon
open_collective: yourproject
ko_fi: yourkofi
custom: ["https://buymeacoffee.com/you"]

Sponsor Tiers That Work

Tier Price Offer
Supporter $5/mo Thanks + name in README
Backer $15/mo Logo in README + Discord role
Sponsor $50/mo Priority support + feature voting
Enterprise $200+/mo Dedicated support + consultation

Platform-Specific Do's and Don'ts

Do's

  1. Do optimize your README for first impression
  2. Do use badges for quick trust signals
  3. Do add relevant topics (up to 20)
  4. Do keep your profile README current
  5. Do respond to issues and PRs promptly
  6. Do pin your best repositories
  7. Do include clear installation instructions
  8. Do submit to relevant awesome lists

Don'ts

  1. Don't neglect the README - it's your landing page
  2. Don't use too many badges (cluttered)
  3. Don't let issues pile up unanswered
  4. Don't forget a license file
  5. Don't use low-quality or broken images
  6. Don't write walls of text without structure
  7. Don't ignore contribution guidelines

Measuring Success

GitHub Metrics to Track

Metric What it tells you Goal
Stars Interest/bookmarks Growth over time
Forks Active usage Quality > quantity
Clones People trying it Pre-install interest
Traffic Profile/repo views Awareness
Referrers Where traffic comes from Channel effectiveness
Contributors Community health Sustainable project

Traffic Insights

Access via: Repository → Insights → Traffic

  • Views and unique visitors
  • Popular content (which files)
  • Referring sites
  • Clone activity

Tools

Tool Use case
Octolens Monitor GitHub for mentions of your project, competitors, and relevant discussions. Get alerts when people talk about problems you solve.
Shields.io Generate status badges
GitHub Readme Stats Dynamic stats for profile
Carbon Beautiful code screenshots
readme.so README generator
Metrics Advanced profile stats

README Audit Checklist

  • Clear, keyword-rich name and description
  • Badges show CI status, version, license
  • One-liner explains what it does
  • Quick start gets users running in < 2 min
  • Code examples are copy-pasteable
  • All links work and are HTTPS
  • Images have alt text
  • Mobile-readable formatting
  • License file present
  • Contributing guidelines exist
  • Topics are set (up to 20)
  • Social preview image uploaded

Related Skills

  • developer-audience-context - Know who evaluates your repo
  • hacker-news-strategy - HN users check GitHub before upvoting
  • reddit-engagement - Redditors evaluate via GitHub
  • dev-to-hashnode - Link from README to content

Limitations

  • Use this skill only when the task clearly matches its upstream source and local project context.
  • Verify commands, generated code, dependencies, credentials, and external service behavior before applying changes.
  • Do not treat examples as a substitute for environment-specific tests, security review, or user approval for destructive or costly actions.

FAQ

Common questions

Discussion

Questions & comments · 0

Sign In Sign in to leave a comment.