Changelog
Product updates, improvements, and new features shipped to Applydrop.
April 19, 2026
Website honesty pass, pricing clarity, and performance
- Pricing page rewrite — replaced contradictory “we don’t publish pricing” prose with a clean beta-workspace tier; dropped the Enterprise tier in favor of a “Coaches & bootcamps” slot for cohort access
- Blog page removed — dead “Coming soon” cards deleted, page unlinked from sitemap and footers
- Footer status link fixed — now points to the live backend status page (api.applydrop.com/status) instead of a 404
- Hero image optimization — WebP variants served via <picture> with PNG fallback; ~85% smaller than the PNG originals across 9 pages
- SEO pages unified — seo-guides.css now uses the same brand tokens as the React landing (bg #0e1114, accent #cde25a)
April 18, 2026
Remove fake social proof, consolidate empty states
- Fabricated testimonials removed — homepage no longer shows the three invented user quotes
- Unverifiable stats replaced — “85%+ match accuracy”, “10x faster”, and “Bring your own API key” cards replaced with honest beta copy
- “Join 2,400+ professionals” removed — auth card now shows accurate private-beta messaging
- SEO shell trimmed — 7 redundant sections that duplicated the React landing were removed to reduce flash between shell and hydrated app (~15% HTML size cut)
- Dashboard empty-state consolidation — new users pre-first-scan now see only the onboarding checklist; zero-stat cards, empty recommendations, and empty activity feed are hidden
- “v1.0” label dropped — sidebar and dashboard footer now correctly say “Private beta”
- Mobile hamburger nav — landing nav now collapses into an accessible drawer on small screens
April 16, 2026
LLM-first answer pipeline (Phases 1–3)
- LLM-first answer generation — regex-based answer rules retired; OpenAI GPT-4.1-mini generates every form answer with structured reasoning and per-field confidence
- Saved answer preparation — when you click Auto-Apply, 30 form answers are pre-computed alongside your tailored resume before the LinkedIn tab opens
- Fuzzy dropdown matching — Levenshtein distance, a 70-country alias table, education aliases, and experience-range aliases so “Egyptian” matches “Egypt” and “Bachelor’s” matches “BS”
- Composite confidence — per-class ceilings plus bonuses for option match, profile grounding, and reasoning quality
- Two-phase form context — instant profile and learned-answer matches in <100 ms, LLM second pass for the rest
- MV3 keep-alive — Port-based 20 s heartbeat prevents service-worker termination mid-apply
- Overlay “Why?” column — every answer shows the LLM’s one-line reasoning so you can review with full context
- PDF resume generation rewrite — modern fpdf2 API, per-section try/except, base-resume fallback when tailoring fails
April 13, 2026
Security hardening, accessibility, and UI polish
- Security headers — Added CSP, X-Frame-Options, X-Content-Type-Options, Permissions-Policy, and HSTS with preload to all frontend pages
- Dependency audit — Patched 5 npm vulnerabilities (Vite path traversal, picomatch ReDoS) to zero
- Rate limiting fix — Per-client IP rate limiting now works correctly behind nginx reverse proxy
- Open redirect fix — Blocked potential open redirect via job apply log URLs
- Migration import hardened — Import now uses an allowlist instead of a blocklist for localStorage keys
- Dead code removal — Removed 3,200+ lines of unused code, reducing main bundle by 140 KB (29%)
- Branded favicon — Replaced default React favicon with the Applydrop brand mark
April 12, 2026
Accessibility and UX improvements
- Keyboard accessibility — Added focus-visible outlines, skip-to-content links, and nav landmarks across all pages
- Reduced motion — All 12 CSS animations respect prefers-reduced-motion system preference
- Error boundary — Lazy-loaded views now show a branded recovery screen instead of white-screening on errors
- Match badges — Added status icons alongside colors for colorblind-friendly score differentiation
- SSE reconnect — Live progress feed now uses exponential backoff (5s→30s) instead of fixed 5s retries
- Inline error messages — Job feedback failures now show visible inline errors instead of failing silently
- Client-side validation — URL validation on Quick Add, 5 MB file size check on resume upload
April 12, 2026
Website enhancements
- Site footer — Added full navigation footer to homepage (Product, Guides, Legal sections)
- Cross-page navigation — Added persistent nav bar across About, Pricing, Security, Contact, Terms, Privacy pages
- Pricing tiers — Added placeholder Free / Pro / Enterprise tier cards
- Contact form — Added name/email/message form to the Contact page
- Legal page readability — Added alternating section backgrounds to Terms and Privacy pages
- SEO improvements — Added missing og:image:alt, twitter:image:alt, llms.txt links, and BreadcrumbList hints
- PWA manifest — Added id, scope, description, categories, and maskable icon support
April 11, 2026
Backend improvements
- Transaction safety — Job insert loops now use explicit SQLite transactions (BEGIN IMMEDIATE / COMMIT)
- Sector relevance engine — Deterministic classifier, scoring composition, backfill worker, correction endpoint (behind feature flags)
- Saved searches API — CRUD endpoints for saved job search filters with email alert support
- Recommendations API — Similar jobs, liked companies, and unexplored sectors suggestions
- Daily matches cron — Scheduled digest builder with email notification support
- Events API — User engagement tracking (view, save, apply, click events)