Spaces:
Runtime error
A newer version of the Gradio SDK is available: 6.26.0
title: GuestPostSuggester
emoji: π»
colorFrom: blue
colorTo: red
sdk: gradio
sdk_version: 6.19.0
python_version: '3.13'
app_file: app.py
pinned: false
license: mit
short_description: Find live guest-post sites, ranked by authority
GuestPostSuggester
Search a catalog of ~32,000 guest-post-accepting websites for sites relevant to your topic. Search is free and local (TF-IDF text matching, no AI call). Results are live-checked for reachability and ranked by OpenPageRank domain authority. Click "Analyze" on any result to crawl its blog and get ~5 AI-suggested guest-post topic ideas that fit its niche but aren't already covered β this step calls an LLM billed to your own Hugging Face token.
How it works
- Search β enter a topic. A local TF-IDF text match (no LLM, no cost) shortlists relevant sites from the catalog by their title/domain/niche.
- Availability check β before any site is shown, its root domain is checked for live reachability (httpx), so dead/parked/unreachable sites never appear in results.
- Ranking β surviving sites are sorted by precomputed OpenPageRank domain authority and shown 10 at a time; "More" reveals the next 10 below.
- Analyze (per result, needs your HF token) β crawls the site's blog for its existing post titles (RSS β WordPress REST API β sitemap β keyword-based blog-page discovery β AI-assisted HTML discovery, cheapest method first, AI only as a last resort), then an LLM suggests ~5 guest-post topics that fit the site but aren't already covered.
Configuration (Space owner)
- Secret
OPR_API_KEYβ a free OpenPageRank API key. Only needed to re-run/refresh the authority-score precompute later β the Space ships withdata/opr_scores.jsonprebuilt, so this isn't required for normal operation. - Persistent storage (optional) β if enabled,
/datacaches domain-availability checks, crawled title libraries, and suggestions across restarts. Without it the app still works; caches just don't persist between restarts.
Billing
The search and ranking steps are entirely free and local. The Analyze step's LLM calls run through Hugging Face Inference Providers using the token you enter in the UI, so they are billed to you. The token is used only for that request and is not stored.