Changelog
Release history for Themys: new features, bug fixes, and improvements.
v1.0.0 - June 2026
Initial public release of Themys.
Chrome Extension
- Auto-detection of Terms of Service and Privacy Policy pages via URL patterns, DOM heuristics, and structural patterns
- Inline overlay showing risk score and flagged clauses directly on the page (Shadow DOM)
- Popup with full scan results, extraction, and summary
- Sign in with Apple or Google via Clerk
- Manifest V3 service worker architecture
- Service worker keep-alive via Chrome Alarms API
- Content script injection on matched ToS/Policy URLs
- Badge icon showing risk score color on detected pages
- Popup detection for checkboxes, inline agreements, and modals
- Tab-based auth flow with Clerk using postMessage bridge
Web App
- Scan page: paste a URL to analyze any Terms of Service page
- Results page: risk score, flagged clauses, full extraction, and AI summary
- Scan history: view and revisit all past scans
- Account settings: profile, subscription, credits, billing
- Responsive design for desktop and mobile
- Apple and Google OAuth via Clerk
- Real-time scan progress indicator
- Dark/light mode with theme toggle in navbar
- Documentation site with 12 content pages
- Docs feedback endpoint (
POST /api/docs/feedback)
Pricing & Billing
- Three-tier pricing: Free ($0), Base ($2.49/mo), Advanced ($4.99/mo)
- Stripe Checkout integration for subscriptions
- Credit pack system for overage: 10 credits ($1.99), 50 credits ($7.99), 200 credits ($24.99)
- Invoice history
- Prorated billing for mid-cycle upgrades
- Automatic plan downgrade on cancellation
- Credit balance visible in extension popup and web app
Analysis Engine
- LLM-powered analysis using a 6-tier fallback chain:
1. google/gemini-2.5-flash-lite (via OpenRouter)
2. xiaomi/mimo-v2.5 (via OpenRouter)
3. google/gemma-4-31b-it:free (via OpenRouter)
4. minimax/minimax-m3 (via OpenRouter)
5. gemini-2.5-flash-lite (via Google Generative AI direct)
6. Hardcoded fallback result
- Risk scoring on a 1-10 scale
- Clause flagging with severity levels (info, caution, warning)
- Category tagging: Data Privacy, Arbitration, Liability, Content & IP, Billing, Account
- Full extraction with structured sections and key points
- Automatic model failover with retry logic
- Structured JSON output parsing from LLM responses
- Prompt engineering tuned for legal document analysis
Extraction Pipeline
- Primary extraction via Jina Reader API
- Fallback to direct HTML fetch and parsing
- Support for JavaScript-rendered pages
- Word count and source tracking
- Extraction result caching
API
POST /api/extract: extract text from a URLPOST /api/analyze: analyze text for risk score, flags, and extractionPOST /api/extension/limit-check: check remaining scans (used by extension)POST /api/docs/feedback: submit feedback on docs pages- Bearer token authentication via Clerk
- Rate limiting per plan tier via Cloudflare KV
- Structured error responses with descriptive messages
Webhooks
- Stripe webhook endpoint:
POST /api/webhooks/stripe - Event handling: checkout, subscription lifecycle, invoice events
- Idempotent processing via
stripe_eventstable - Signature verification on all incoming webhooks
Technical Details
- Next.js 16 with App Router
- Supabase (PostgreSQL) for data storage
- Cloudflare Pages + Workers for deployment
- Cloudflare KV for rate limiting and caching
- Stripe for payment processing
- Tailwind CSS 4
- Clerk for authentication
- Sentry for error tracking
- Resend for email
- Chrome Extension with Manifest V3 (15 source files)
- Jina Reader API for web content extraction
Security
- Bearer token authentication for API access
- Stripe webhook signature verification
- Per-user data isolation, no cross-user data access
- HTTPS-only API endpoints
- Rate limiting per plan tier via Cloudflare KV
Known Limitations
- Chrome only. No Firefox or Safari extension yet.
- English-language Terms of Service analysis only.
- No export functionality for scan results (coming soon).
- No team/organization accounts (coming soon).
- API does not support batch analysis.
Database Schema
Initial schema includes the following tables:
usersscansclausesblocklist_itemstos_cacheexplanations_cachecredit_packsinvoicesstripe_eventsfull_extraction_sectionsfull_extraction_pointsdocs_feedbackUpcoming
Features planned for future releases:
- v1.1: Export scan results as PDF and CSV
- v1.1: Browser extension for Firefox (Manifest V3)
- v1.2: Team accounts with shared scan history
- v1.2: Bulk URL analysis via API
- v1.3: Multi-language support (Spanish, French, German)
- v1.3: Custom alert rules (notify when a ToS changes)
Timelines are estimates and subject to change.
Was this page helpful?