Skip to content
Data
Skill

/project-idea-validator-skill

Researches any project idea against live data from GitHub and Dev.to to surface what already exists, how mature the space is, and where the real opportunity lives. Use when a developer describes something they want to build and wants to know if it's been done before. Triggers on

From plugin
tinyfish-cookbook
2.1k27 skills2 MCP
Install
$ npx -y skills add tinyfish-io/tinyfish-cookbook --skill project-idea-validator-skill --agent claude-code

How it fires

How this skill gets triggered: by you, by Claude, or both.

  • Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
  • You can call itInvoke it directly when you want it.
  • Slash command/project-idea-validator-skill

Context preview

The summary Claude sees to decide when to auto-load this skill.

Researches any project idea against live data from GitHub and Dev.to to surface what already exists, how mature the space is, and where the real opportunity lives. Use when a developer describes something they want to build and wants to know if it's been done before. Triggers on

SKILL.md

project-idea-validator-skill.SKILL.md
name: project-idea-validator
description: Researches any project idea against live data from GitHub and Dev.to to surface what already exists, how mature the space is, and where the real opportunity lives. Use when a developer describes something they want to build and wants to know if it's been done before. Triggers on phrases like "validate my idea", "has this been built", "is this already a thing", "what exists for X", "should I build this", "is this idea original", "check if my project exists", "what are the alternatives to what I want to build", "is the market saturated for X", or any request to research the competitive landscape before starting a project.

Project Idea Validator — Discover What Already Exists Before You Build

You have access to the TinyFish CLI (`tinyfish`), a tool that runs browser automations from the terminal using natural language goals. This skill uses it to search GitHub and Dev.to in parallel, then synthesizes results into a gap analysis report.

Pre-flight Check (REQUIRED)

Before making any TinyFish call, always run BOTH checks:

**1. CLI installed?**

PowerShell:

Get-Command tinyfish; tinyfish --version

bash/zsh:

which tinyfish && tinyfish --version || echo "TINYFISH_CLI_NOT_INSTALLED"

If not installed, stop and tell the user: > Install the TinyFish CLI: `npm install -g @tiny-fish/cli`

**2. Authenticated?**

tinyfish auth status

If not authenticated, stop and tell the user:

> You need a TinyFish API key. Get one at: https://agent.tinyfish.ai/api-keys > > Then authenticate: > > **Option 1 — CLI login (interactive):** > ``` > tinyfish auth login > ``` > > **Option 2 — PowerShell (current session only):** > ```powershell > $env:TINYFISH_API_KEY="your_api_key_here" > ``` > > **Option 3 — PowerShell (persist across sessions):** > ```powershell > [System.Environment]::SetEnvironmentVariable("TINYFISH_API_KEY", "your_api_key_here", "User") > ``` > Then close and reopen PowerShell for it to take effect. > > **Option 4 — bash/zsh (Mac/Linux):** > ```bash > export TINYFISH_API_KEY="your_api_key_here" > ``` > > **Option 5 — Claude Code settings:** Add to `~/.claude/settings.local.json`: > ```json > { > "env": { > "TINYFISH_API_KEY": "your_api_key_here" > } > } > ```

Do NOT proceed until both checks pass.

---

What This Skill Does

Given a project idea (e.g. *"a CLI tool that converts Figma designs to Tailwind components"*), this skill:

1. Searches **GitHub** for existing repos with similar purpose, tech stack, or keywords 2. Searches **Dev.to** for articles, tutorials, or project showcases covering the same problem

It then synthesizes findings into a structured gap analysis: what exists, how mature it is, and where the opportunity still lives.

---

Core Command

tinyfish agent run --url <url> "<goal>"

Flags

| Flag | Purpose | |------|---------| | `--url <url>` | Target website URL | | `--sync` | Wait for full result (no streaming) | | `--async` | Submit and return immediately | | `--pretty` | Human-readable formatted output |

---

Step-by-Step Workflow

Step 1 — Search GitHub

Search for existing repositories matching the idea. Run with `--sync` since you need the full list before synthesizing.

tinyfish agent run --sync --url "https://github.com/search?q=<keywords>&type=repositories&s=stars&o=desc" \
  "Extract the top 10 search results as JSON: [{\"name\": str, \"owner\": str, \"description\": str, \"stars\": str, \"url\": str, \"last_updated\": str}]"

**Example for a Figma-to-Tailwind CLI idea:**

tinyfish agent run --sync \
  --url "https://github.com/search?q=figma+tailwind+cli&type=repositories&s=stars&o=desc" \
  "Extract the top 10 repositories as JSON: [{\"name\": str, \"owner\": str, \"description\": str, \"stars\": str, \"url\": str, \"last_updated\": str}]"

---

Step 2 — Search Dev.to

Search for articles and project posts covering the same problem space. Run in parallel with Step 1 results processing.

tinyfish agent run --sync --url "https://dev.to/search?q=<keywords>" \
  "Extract the top 10 articles as JSON: [{\"title\": str, \"author\": str, \"tags\": [str], \"published_at\": str, \"url\": str, \"reactions\": str}]"

**Example:**

tinyfish agent run --sync \
  --url "https://dev.to/search?q=figma+tailwind+component+generator" \
  "Extract the top 10 articles as JSON: [{\"title\": str, \"author\": str, \"tags\": [str], \"published_at\": str, \"url\": str, \"reactions\": str}]"

---

Parallel Execution

Steps 1 and 2 are independent — run them at the same time. Do NOT wait for GitHub before starting Dev.to.

**Good — Parallel calls:**

# Fire both simultaneously
tinyfish agent run --sync --url "https://github.com/search?q=<keywords>&type=repositories&s=stars&o=desc" \
  "Extract top 10 repositories as JSON: [{\"name\": str, \"owner\": str, \"description\": str, \"stars\": str, \"url\": str, \"last_updated\": str}]" &

tinyfish agent run --sync --url "https://dev.to/search?q=<keywords>" \
  "Extract top 10 articles as JSON: [{\"title\": str, \"author\": str, \"url\": str, \"reactions\": str}]" &

wait

**Bad — Sequential calls:**

# Don't do this — wastes time and gives the same results
tinyfish agent run --url "https://github.com/..." "...also search Dev.to..."

Each source is its own call. Always.

---

Step 3 — Synthesize Into a Gap Analysis

Once both sources return results, synthesize findings into this structure:

## Project Idea Validation: <idea title>

### What Already Exists
- <project/article> — <what it does, stars/reactions, last active>
- ...

### Maturity Assessment
- GitHub: <active / abandoned / fragmented>
- Dev.to coverage: <heavy / moderate / sparse>

### Gaps & Opportunities
- <specific gap #1>
- <specific gap #2>
- ...

### Verdict
<1–2 sentences: is the space crowded, open, or ripe for a better take?>

Use the raw JSON from both sourc

Read more
Ships withtinyfish-cookbook

Search and Fetch are now FREE TinyFish Search and Fetch endpoints are now free for everyone with generous rate limits, no credit card required. Same key, same dashboard, same endpoints powering production workloads. Grab a key &rarr;

Get the whole plugin
Stats
2,108
Stars
324
Forks
Active
Maintenance
TypeScript
Language
MIT
License
22h ago
Last commit
6mo ago
Created

Repo: tinyfish-io/tinyfish-cookbook

Other skills on tinyfish-cookbook.