Skip to content

v0.3.0: Pro tier, Gallery, legal compliance#1

Merged
naw-bitbot merged 19 commits intomainfrom
v2-features
Mar 22, 2026
Merged

v0.3.0: Pro tier, Gallery, legal compliance#1
naw-bitbot merged 19 commits intomainfrom
v2-features

Conversation

@naw-bitbot
Copy link
Copy Markdown
Owner

Summary

  • Pro feature gating: Free/Pro tier split with £19 one-time purchase via LemonSqueezy license keys. Video quality (4K/1080p), audio formats (FLAC/WAV/AAC/Opus), and gallery organisation are Pro-only.
  • Gallery page: Virtual view unioning downloads + clips with grid/list toggle, 50-item free limit, collections for Pro users. "Downloads" renamed to "Yoinks" throughout.
  • Legal compliance: First-launch consent gate, in-app legal touchpoints on Clipper/Archive/Video pages, DMCA policy links, Terms of Use and Privacy Policy links in Settings.
  • Pro page: Shop window with feature grid and upgrade CTA for free users, dashboard for Pro users. License key activation with confetti celebration.
  • Backend: Database migration v4 (collections, gallery_meta, legal_consent tables), gallery CRUD, license validation module, 9 new Tauri commands, Pro gating on video/audio/schedule/monitor commands.

Changes

  • 27 files changed, ~3,240 insertions
  • 6 new components, 2 new hooks, 1 new page, 1 new Rust module
  • Spec & implementation plan docs included

Test plan

  • App launches without crash — legal consent screen appears on first run
  • Accept consent → main app loads with "Yoinks" nav item
  • Gallery page shows empty state, populates after downloading/clipping
  • Free user: video quality locked at 720p max, audio locked to mp3
  • Pro page shows shop window with feature grid and license key input
  • Settings page shows "Free Plan" status and legal links
  • Legal info text visible on Clipper, Archive, and Video pages
  • Version shows v0.3.0 in sidebar

🤖 Generated with Claude Code

Nick Waters and others added 19 commits March 22, 2026 13:10
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Fix gallery data model: union downloads + clips (no archives table)
- Fix gallery_meta primary key: composite (item_id, item_type)
- Add position columns to collections and gallery_meta
- Clarify navigation rename (page ID + label changes)
- Define migrate_v4 explicitly
- Resolve ToS storage: legal_consent table is source of truth
- Define smart folder rules_json schema
- Clarify multi-threaded download implementation approach
- Add gating decisions for existing features (exports, digest, etc.)
- Clarify scheduling status (built in v2, gated to Pro)
- Define usePro() hook interface
- Clarify grace period (initial activation only)
- Define referral codes as LemonSqueezy discount codes

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
14 tasks across 4 phases: backend foundation, frontend foundation,
Pro gating & upgrade UX, final integration.

Review fixes applied:
- Add schema_version insert + version guard to migrate_v4
- Add backfill query for existing downloads/clips in gallery
- Add hostname crate to Cargo.toml step
- Fix video/audio gating code to match actual parameter types
- Wire gallery_meta cleanup into delete commands
- Add useEffect import note for App.tsx
- Update DEFAULT_SETTINGS in useSettings.ts
- Fix CSS variable opacity syntax for Tailwind
- Use named exports consistently
- Fix parallelism batch table (Task 5 depends on Task 3)
- Explicitly defer Pro Gallery advanced features to follow-up plan

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
… components

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
…hooks

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
…gate

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@naw-bitbot naw-bitbot merged commit cd9bc6b into main Mar 22, 2026
4 checks passed
@naw-bitbot naw-bitbot deleted the v2-features branch March 22, 2026 19:22
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant