8000 GitHub - iniyan/fairline-seo: Fairline SEO — permanently free on-page SEO checker (MV3) · GitHub
[go: up one dir, main page]

Skip to content

About

Fairline SEO — permanently free on-page SEO checker (MV3)

Resources

Stars

0 stars

Watchers

0 watching

Forks

Repository files navigation

Fairline SEO — permanently free on-page SEO checker (MV3)

Install (developer mode)

  1. Open chrome://extensions, enable Developer mode.
  2. Load unpacked → select this folder (fairline-seo/).
  3. Pin the extension, browse any page, click the icon → Audit → Run audit.

Free-forever policy

Core audit is free forever, no account, zero network calls. The promise list in promise.md is append-only and mirrored exactly in the popup Promise tab. A feature can be added, never removed. QA must verify every promise item before each release.

Export licensing flow (one-time, not a subscription)

  1. User clicks Export → sees one-time $9.99 prompt (not a subscription upsell).
  2. Stripe Checkout (backend) → payment → backend creates row in licenses table → key emailed.
  3. User enters key in popup Export tab or Options page → verifyLicense(key) POSTs to backend → on valid, caches {licenseKey, licenseVerifiedAt} in chrome.storage.local.
  4. Re-verify every 30 days when online. Offline: cached verification grants grace (exports keep working ≥30 days without network).
  5. If backend reports revoked: true (refund), extension clears the key and reverts to free tier with a message — core audit keeps working.

Backend stub — minimal licenses table

licenses(key TEXT PK, email TEXT, stripe_payment_id TEXT, issued_at TEXT, revoked BOOL)

verifyLicense(key) in lib/license.js:

  • VERIFY_URL config placeholder (empty string = dev-only local format check) — set to the real endpoint, e.g. POST https://api.fairline-seo.com/v1/licenses/verify {key} → {valid, revoked, email}.
  • Current fallback accepts FL-XXXX-XXXX format locally for dev; set the real API URL before release.
  • Multi-device: the same key works on a user's own devices (not device-locked); the backend logs device count per key for abuse monitoring only.
  • Refund/revoke: backend marks revoked=true; extension re-checks every 30 days when online and reverts to free tier with a message.

Storage (chrome.storage.local)

{ licenseKey, licenseVerifiedAt, auditHistory: [last 20 {url, auditedAt, summary}] }

Permissions (minimal footprint = differentiator)

activeTab, storage only. Content script on <all_urls> (reads viewed page only, nothing transmitted). No background worker, no alarms.

About

Fairline SEO — permanently free on-page SEO checker (MV3)

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages

0