Goondex/CHANGELOG.md
Stu Leak 16fb407a3c v0.1.0-dev4: Add web frontend with UI component library
- Implement full web interface with Go html/template server
- Add GX component library (buttons, dialogs, tables, forms, etc.)
- Create scene/performer/studio/movie detail and listing pages
- Add Adult Empire scraper for additional metadata sources
- Implement movie support with database schema
- Add import and sync services for data management
- Include comprehensive API and frontend documentation
- Add custom color scheme and responsive layout

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-17 10:47:30 -05:00

3.1 KiB

Changelog

v0.1.0-dev4 (2025-11-16)

🎨 Web UI Enhancements

  • Grid Layout Migration: Converted all listing pages (Performers, Studios, Scenes) from table-based to modern card grid layout

    • Uses GX_CardGrid component system with responsive design
    • Performers: 3:4 aspect ratio portrait cards with scene count and nationality
    • Studios: 3:4 aspect ratio cards with description preview
    • Scenes: 16:9 aspect ratio landscape cards with date, studio, and code
    • Hover effects with neon pink glow
    • Mobile-responsive grid (auto-fills from 160px to 220px cards)
  • Updated Navigation: All pages now use consistent navbar with logo

  • Enhanced Search Forms: Updated to use GX button components with hover effects

  • Improved Styling: All pages now load goondex.css instead of style.css

🌐 Adult Empire Integration

  • Complete Scraper Implementation

    • HTTP client with cookie jar for session management
    • XPath-based HTML parsing (no official API available)
    • Scene scraping: title, date, studio, performers, tags, description, cover art
    • Performer scraping: bio, measurements, birthday, ethnicity, aliases, images
    • Search functionality for both scenes and performers
  • CLI Commands:

    • adultemp search-scene [query] - Search for scenes
    • adultemp search-performer [name] - Search for performers
    • adultemp scrape-scene [url] - Scrape and import a scene
    • adultemp scrape-performer [url] - Scrape and import a performer
    • adultemp merge-performer [id] [url] - Merge Adult Empire data into existing performer
    • Optional --etoken flag for authenticated access

🔄 Data Merging & Update System

  • Intelligent Data Merger

    • New merger package for combining data from multiple sources
    • TPDB data takes priority, Adult Empire fills in gaps
    • Smart name matching algorithm (70% word overlap threshold)
    • Merges: bio, aliases, measurements, physical attributes
    • Preserves high-quality TPDB images over Adult Empire
  • Performer Update Command

    • performer-update [id] - Refresh performer from TPDB
    • Automatically searches Adult Empire for supplemental data
    • Shows potential matches for manual merging

📚 Documentation

  • Created comprehensive docs/ADULT_EMPIRE_SCRAPER.md
    • Architecture overview with diagrams
    • API reference for all scraper methods
    • XPath selector documentation
    • Authentication guide (etoken cookie)
    • Troubleshooting section
    • Comparison with TPDB scraper

🐛 Bug Fixes & Improvements

  • Fixed variable shadowing in joinStrings() function
  • Added missing dependencies for HTML parsing (golang.org/x/text/*)
  • Riley Reid investigation: Performer exists (ID: 20029) but has 0 scenes (scene linking issue)

📦 New Dependencies

  • github.com/antchfx/htmlquery - XPath HTML parsing
  • github.com/antchfx/xpath - XPath query engine
  • golang.org/x/net/html - HTML parsing
  • golang.org/x/text/* - Text encoding support

v0.1.0-dev3 (Previous)

Complete TPDB metadata with duplicate prevention

v0.1.0-dev2

Full TPDB integration with auto-fetch and comprehensive docs

v0.1.0-dev1

Initial release with basic TPDB functionality