macOS Apple silicon
brew install --cask zanmato/tap/shouting-robinThe app isn't notarized yet. If you download it yourself, clear the quarantine flag after unpacking:
xattr -r -d com.apple.quarantine "Shouting Robin.app"
Rust and GPUI · Apache 2.0
Shouting Robin runs on Linux, macOS and Windows. It crawls a site from your machine, can render pages in Chrome, and sorts the findings by priority. Product pages get their own checks, including GTIN check digits.
Shouting Robinhttps://zanmato.github.io › shouting-robin
A desktop SEO crawler for Linux, macOS and Windows, built for ecommerce. Crawls from your machine and sorts the findings by priority.
The results of a crawl are split into tabs. Most tabs have filters for the problems they check, and any tab can be exported as CSV.
Every URL with its status code, content type, indexability, crawl depth and link score. Broken links, redirect chains and loops, and URLs with parameters are flagged.
Titles and descriptions measured in characters and in pixels, H1 and H2 checks, exact and near duplicate content, and images that are broken, over 100 KB, or missing alt text or size attributes.
Canonicals, robots directives, hreflang return tags, language codes and x-default, and sitemap URLs that are not indexable, do not return 200 or were not found by following links.
Structured data checked against the required and recommended properties for types such as Product, Article, Recipe and JobPosting, and missing security headers. Chrome crawls add LCP, CLS, FCP and TTFB, and axe-core accessibility audits.
Select a row to show the page in the details panel next to the grid.
The details panel shows the status and indexability of the page, its title, description and headings with their lengths, and a preview of the search result. Structured data, link metrics and response headers follow below.
Inlinks and Outlinks list the links to and from the page.
Chrome crawls run axe-core on every page. Each violation is a row with its rule, impact, the element it found and its HTML.
The Performance tab in the same crawl has LCP, CLS, FCP and TTFB for each page.
A crawl is compared with the previous crawl of the same URL. The Changes tab lists pages that were added or removed, and pages whose status, indexability, title, H1, meta description or word count changed.
Earlier crawls are listed in the sidebar. Open one to see its results, or recrawl it with the settings it ran with.
A page counts as a product page when it has Product structured data or an og:type of product. The Ecommerce tab reads the product's data and flags:
availability, SKU, GTIN, brand or imagereview or aggregateRatingBreadcrumbList data
Every crawl is saved in a local SQLite database. Open, recrawl or delete earlier crawls from the sidebar.
Turn on Chrome to crawl pages after JavaScript has run. The server HTML is fetched as well, so content that only exists after rendering is flagged.
Export the Overview as a PDF report with sample URLs for each finding, the current tab as CSV, or every tab as CSV files at once.
From title pixel widths and hreflang return tags to GTIN check digits and security headers. Each check is a filter on its tab, so the URLs it flags are one click away.
Checksums for every file are in SHA256SUMS.
brew install --cask zanmato/tap/shouting-robinThe app isn't notarized yet. If you download it yourself, clear the quarantine flag after unpacking:
xattr -r -d com.apple.quarantine "Shouting Robin.app"A single executable, no installer.
sudo apt install ./shoutingrobin_0.2.1_amd64.debChrome or Chromium is only needed for Chrome crawls.