40 Commits

Author SHA1 Message Date
Ben Senescu
bd402844fa
Add public product roadmap (#480) 2026-08-11 22:38:47 -04:00
Jeremy Rivera
85095f4ac6
Library batch 2: plays 05-08, completing the Keyword Research library (#187) 2026-08-10 12:11:40 -04:00
Ben Senescu
30948a2a1d
Increase pricing calculator website limit to 500 (#454) 2026-08-01 17:28:04 -04:00
Ben Senescu
b8253fb083
Free backlink checker at /backlink-checker (#444) 2026-08-01 13:50:50 -04:00
Ben Senescu
32b1b1d38c
Remove Product Hunt launch banner from marketing site (#440) 2026-07-31 13:07:44 -04:00
Ben Senescu
f56972639f
content-review skill + revert unfinished redesign + some copy changes (#422) 2026-07-23 14:39:56 -07:00
Jeremy Rivera
a4ede67ebb
Keyword Research Strategy Library + feature-page guides section + Search Everywhere interview (#128) 2026-07-23 11:37:58 -07:00
Ben Senescu
67ed8d3c77 feat(web): add Product Hunt #1 Product of the Day laurel to the hero (#415) 2026-07-23 10:31:53 -04:00
Ben Senescu
20d3de0e08
Refresh homepage messaging and Product Hunt banner (#402) 2026-07-19 00:59:39 -04:00
Ben Senescu
cd550729a2
Pricing page redesign: usage estimator + flat layout (#368) 2026-07-19 00:51:51 -04:00
Ben Senescu
072fbecae3
Simplify README and organize docs (#400) 2026-07-19 00:02:29 -04:00
Ben Senescu
9942c5a590 website: change link 2026-07-02 18:15:46 -04:00
Ben Senescu
6313812f3f Dynamic star count on website (#306) 2026-06-28 16:38:09 -04:00
Ben Senescu
7cc4fa9aa5
Revert "Update base plan price from $10/month to $20/month (#283)" (#301)
This reverts commit 0adf77824ac9be3ab01e06b6f697482793823488.
2026-06-26 09:29:52 -04:00
Ben Senescu
0adf77824a
Update base plan price from $10/month to $20/month (#283)
Bump all customer-facing references to the managed base plan price from
$10/month to $20/month, and scale the bundled "Includes $X of Usage
Credits" copy from $10 to $20 to match the price.

Covers the subscribe/billing pages, onboarding plan card and fact sheet,
backlinks/AI-search access gates, and the marketing pricing/comparison/
GSC pages plus the README.


Claude-Session: https://claude.ai/code/session_017QayWXGubs1JNbLbqRF4CS

Co-authored-by: Claude <noreply@anthropic.com>
2026-06-21 22:01:25 -04:00
Ben Senescu
9abed9278f
Remove free trial: subscription paywall + 30-day money-back guarantee (#251) 2026-06-14 21:21:04 -04:00
Ben Senescu
ffded88e33
Landing page redesign + copy/positioning doc (#267) 2026-06-14 18:14:12 -04:00
Ben Senescu
f7e5729a09
SERP title/meta optimization for striking-distance keywords (#254) 2026-06-10 14:21:55 -04:00
Ben Senescu
93705f125d
Move guides to blogs and add best open source tools post (#243) 2026-06-05 15:37:42 -04:00
Ben Senescu
c8fcdcda20
website: google search console mcp landing page (#237) 2026-06-04 18:07:00 -04:00
Ben Senescu
319b4d7772
website: open source seo page (#235) 2026-06-02 15:56:38 -04:00
Ben Senescu
03fd3588ef
refactor: clean up complex code (#229) 2026-05-28 16:37:33 -04:00
Ben Senescu
0e75e07660
website: Add MCP and Skills Docs 2026-05-24 18:35:55 -04:00
Ben Senescu
a8124a07b5
Add grouped marketing feature pages and SEO-friendly feature hub (#199)
* Refine marketing feature pages and feature navigation

* Add SEO feature page polish

* Share feature slugs with sitemap generation
2026-05-17 17:53:46 -04:00
Ben Senescu
46631e68e9
Remove ChatGPT MCP setup instructions (#195) 2026-05-13 21:44:44 -04:00
Ben Senescu
5e358f1873
Add an MCP landing page and update footer navigation (#176)
* Fix open-seo MCP auth discovery

* Refine MCP marketing page route and copy
2026-05-10 17:23:37 -04:00
Ben Senescu
368b3ce375 website: add faq 2026-04-28 21:03:17 -04:00
Ben Senescu
65d62f0eed
website: fix mobile header and footer layout (#135)
Hide Sign in and GitHub text label on small screens, wrap footer
links onto multiple rows, and clip any horizontal overflow globally.
2026-04-23 11:54:54 -04:00
Ben Senescu
29a0c9cc43
website: add seo for startups guide (#33) 2026-04-22 13:30:07 -04:00
Ben Senescu
021ec830af
website: add rank tracking + format (#126) 2026-04-16 19:19:21 -04:00
Ben Senescu
4137b386ab
website: convert CTA to sign-up (#108)
* landing: convert main CTA to sign-up, add shared marketing layout

- Replace email waitlist form with "Try now" sign-up button as primary CTA
- Add shared _marketing layout route with consistent nav (Pricing, GitHub, Sign in)
- Move email form to bottom of homepage as "Stay in the loop" newsletter
- Update self-host card copy for live managed version
- Reorder self-host card below video on mobile via flex order
- Add /pricing to sitemap and SiteFooter

* change footer and add social card

* landing: move newsletter and footer to shared marketing layout

Move divider line above the newsletter form instead of between
the form and footer links.
2026-04-09 15:13:23 -04:00
Ben Senescu
aed666ef3c feat: add "Get Started" CTA to pricing page managed section (#82) 2026-04-08 14:09:02 -04:00
Ben Senescu
622a86e3dc website: terms + privacy policy (#56)
* feat: add markdown-backed legal pages

Move privacy into the Fumadocs content pipeline and add a terms page so legal copy can be managed as markdown alongside other generated pages.

* save terms draft

* clean up notes

* Add privacy policy

* Update policies

* save

* simplify legal page routes
2026-04-08 14:09:01 -04:00
Ben Senescu
add176c3cc Add pricing page (#58)
* refactor: move lighthouse audits to dataforseo (#43)

* refactor: move lighthouse audits to dataforseo

* chore: remove obsolete audit settings modal

* refactor: rename psi flows to lighthouse

* save

* refactor: simplify audit lighthouse storage flow

* fix: separate lighthouse metrics from actionable audits

* refactor: remove redundant audit project inputs

* feat: redesign lighthouse issues screen with score gauges and table layout

Replace flat score cards with circular SVG gauges, condense metrics into
a compact grid, and switch issue list from cards to an expandable table
with fixed column widths.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

* test: harden lighthouse regression coverage

* fix: restore project-scoped audit inputs

* refactor: simplify lighthouse payload handling

* refactor: inline lighthouse server handlers

* refactor: share audit workflow types

* refactor: simplify lighthouse payload flows

* save

* refactor: drop project pagespeed api key

* fix: restore lighthouse issues loading with resilient project context

* fix: restore audit issues back navigation

* refactor: simplify project context and lighthouse error handling

* fix: tolerate DataForSEO lighthouse payload drift

* refactor: route audit lighthouse through dataforseo client

---------

Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

* refactor: move DataForSEO response cache from KV to R2 (#46)

* refactor: move lighthouse audits to dataforseo (#43)

* refactor: move lighthouse audits to dataforseo

* chore: remove obsolete audit settings modal

* refactor: rename psi flows to lighthouse

* save

* refactor: simplify audit lighthouse storage flow

* fix: separate lighthouse metrics from actionable audits

* refactor: remove redundant audit project inputs

* feat: redesign lighthouse issues screen with score gauges and table layout

Replace flat score cards with circular SVG gauges, condense metrics into
a compact grid, and switch issue list from cards to an expandable table
with fixed column widths.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

* test: harden lighthouse regression coverage

* fix: restore project-scoped audit inputs

* refactor: simplify lighthouse payload handling

* refactor: inline lighthouse server handlers

* refactor: share audit workflow types

* refactor: simplify lighthouse payload flows

* save

* refactor: drop project pagespeed api key

* fix: restore lighthouse issues loading with resilient project context

* fix: restore audit issues back navigation

* refactor: simplify project context and lighthouse error handling

* fix: tolerate DataForSEO lighthouse payload drift

* refactor: route audit lighthouse through dataforseo client

---------

Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

* refactor: move DataForSEO response cache from KV to R2

KV TTL-based expiry is imprecise for cache freshness. Switch to R2 with
soft TTL via custom metadata (expiresAt) and a 7-day lifecycle rule for
cleanup. Cache objects live under the `dataforseo-cache/` prefix,
separate from durable audit payloads in `site-audit/`.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

* refactor: use Workers crypto for R2 cache keys

Keep the cache helper aligned with the Cloudflare runtime and avoid pulling Worker bindings into Vitest. Also clarify that R2 lifecycle cleanup is optional but recommended to control storage growth.

---------

Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

* refactor: move hosted billing to Autumn hooks (#48)

* refactor: move lighthouse audits to dataforseo (#43)

* refactor: move lighthouse audits to dataforseo

* chore: remove obsolete audit settings modal

* refactor: rename psi flows to lighthouse

* save

* refactor: simplify audit lighthouse storage flow

* fix: separate lighthouse metrics from actionable audits

* refactor: remove redundant audit project inputs

* feat: redesign lighthouse issues screen with score gauges and table layout

Replace flat score cards with circular SVG gauges, condense metrics into
a compact grid, and switch issue list from cards to an expandable table
with fixed column widths.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

* test: harden lighthouse regression coverage

* fix: restore project-scoped audit inputs

* refactor: simplify lighthouse payload handling

* refactor: inline lighthouse server handlers

* refactor: share audit workflow types

* refactor: simplify lighthouse payload flows

* save

* refactor: drop project pagespeed api key

* fix: restore lighthouse issues loading with resilient project context

* fix: restore audit issues back navigation

* refactor: simplify project context and lighthouse error handling

* fix: tolerate DataForSEO lighthouse payload drift

* refactor: route audit lighthouse through dataforseo client

---------

Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

* refactor: move hosted billing to Autumn hooks

* fix: satisfy ci checks for hosted billing

* refactor: simplify hosted Autumn billing integration

Limit Autumn wiring to the billing route and remove billing-specific indirection so the hosted billing flow is easier to reason about. Stop sending organization IDs as fake customer names to keep customer identity data honest.

* fix: satisfy ci line-limit check for hosted billing

---------

Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

* Add pricing page

* merge

* Revert home page back to normal

---------

Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-08 14:09:01 -04:00
Ben Senescu
191879c87c fix: improve social previews and shared icons (#52)
Add share metadata and a real product social card so OpenSEO links render with a stronger preview. Sync the landing site and app shell favicons with the shared Every App icon set.
2026-03-27 18:56:14 -04:00
Ben Senescu
63d14d57ab
website: refine homepage SEO metadata (#39)
* website: turn on observability

* save

* website: improve homepage SEO metadata

* website: keep homepage SEO copy on-brand
2026-03-17 15:42:26 -04:00
Ben Senescu
ba32bf994f
website: turn on observability (#38)
* website: turn on observability

* save
2026-03-16 22:55:49 -04:00
Ben Senescu
23fb595755
chore: rename references to open-rank back to open-seo (#35)
* docs: move project docs into docs directory

* docs: rebrand landing site as OpenSEO

* fix: update remaining OpenSEO backlinks links

* Change landing page copy + format

* website: add www custom domain route

* Tweak README

* save
2026-03-16 18:58:44 -04:00
Ben Senescu
a51112d877
website: fix styling (#34)
* website: apply theme colors to root body

* website: fix privacy page contrast in dark mode
2026-03-16 18:09:06 -04:00
Ben Senescu
a0ef7412f2
website: Create website (#19)
* Add website

* save

* chore: validate website in CI and fix workers typing
2026-03-11 23:23:47 -04:00