younesbenallal/seo-skills

seo-audit-report

Build an interactive Search Console SEO report. Use when the user wants a client-side Vite+React dashboard that imports GSC data, stores it locally, and visualizes query and page KPIs.

First seen Jan 21, 2026

Installation

$ npx skills add younesbenallal/seo-skills --skill seo-audit-report

Similar popular skills

Related neighbors and high-traction skills in the same topics — useful to compare before installing.

Also in this package

Other skills from younesbenallal/seo-skills · top by installs.

npx skills add younesbenallal/seo-skills

Browse all from younesbenallal/seo-skills

More details

Agent compatibility

Declared targets from SKILL.md / docs. Unmarked agents are not listed — the skill may still install via the CLI.

Claude Code Not declared
Cursor Not declared
Codex Not declared
GitHub Copilot Not declared
Windsurf Not declared
Gemini CLI Not declared
Cline Not declared
OpenCode Not declared

Also listed on

Alternate registries and mirrors of this skill.

Repository health

Stars 1
Default branch main
Open issues 0
Status Active

Package contents

Files included with this skill beyond the listing page.

  • skill md SKILL.md 3,814 B
  • docs SUMMARY.md 208 B

History

  1. First seen on skills.sh
  2. First recorded snapshot · 29 installs

SKILL.md

SEO audit report (scaffold instructions)

Use this skill when the user wants an interactive, client-side report for inspecting Search Console exports or connected data repeatedly in the browser.

Context and preflight

Run the shared preflight in [../docs/credentials-and-tooling.md](../docs/credentials-and-tooling.md) before discovery or implementation. Reuse .seo-context.md when it exists. Resolve the project's canonical GSC property from accessible URL-prefix and sc-domain: variants. Record unresolved assumptions rather than inventing business priorities or edit permission.

Required inputs

  • Project directory name.
  • Data source: live connected GSC data or an export created from the connected MCP.
  • Persistence target: a serialized sql.js database persisted in the browser's IndexedDB.

Tooling & credentials

  • Auth mode: mcp
  • Requires: connected GSC access through the required MCP
  • Input path: live GSC data or an MCP export materialized to JSON/CSV
  • Fallback: none

Workflow

  1. Scaffold the project

- Run npm create vite@latest <project-name> -- --template react-ts (or bun create vite@latest ... if Bun is preferred). - Enter the new folder and install deps (npm install/bun install). - Keep the generated project structure unless the requested report needs a different route or entry point.

  1. Add dependencies

- Install react, react-dom (if not already) along with zod. - Install runtime helpers: sql.js for the in-browser SQLite engine and idb-keyval for persisting exported database bytes. - Keep typescript + vite dev dependencies aligned with the template.

  1. Implement the data layer

- Configure sql.js with the sql-wasm.wasm bundle and isolate initialization in a reusable helper. - Parse CSV and JSON inputs into { date, query, page, clicks, impressions, ctr, position }, coercing numeric fields and handling missing optional values consistently. - Store normalized rows in a gsc_rows table with indexes on date, query, and page. - Export the database to bytes after imports and persist those bytes with idb-keyval; restore them when the app loads.

  1. Implement the report views

- Surface total clicks, impressions, CTR, and weighted position, plus top queries, top pages, and CTR-gap opportunities. - Make opportunity thresholds and date/page/query filters visible and adjustable rather than hiding them in query code. - Include file import, optional fetch from /gsc/latest.json, custom filters, and reset controls.

  1. Polish and document the scaffold

- Style the layout with CSS variables and card/grid patterns, keeping readability front-and-center with a sticky header, callouts, and a narrow text width. - Add a small sample export such as public/gsc/latest.json when it helps demonstrate the flow. - Document the accepted import schema, persistence model, and CTR-opportunity heuristics in the README or nearby comments.

  1. Run and validate

- Start the dev server with npm run dev or bun run dev and load a representative CSV/JSON export. - Exercise import, reload persistence, filters, reset, and the optional /gsc/latest.json fetch path. Check the browser console for worker/WASM or IndexedDB errors. - Run the project's available typecheck, lint, and build commands. In the README, state which commands ran and any live-GSC or browser limitations. - Remember that sql.js executes SQLite in the browser; IndexedDB stores the serialized database bytes—it is not the SQLite engine.