goon/app
goon-foss d8d00295e1 feat(jav): javflix.cc scraper + extractor (first JAV source, gated off main feed)
First site of the JAV vertical (user request, separate section). javflix.cc is a
WordPress JAV aggregator, VPS-reachable and server-rendered. Scraper parses itemprop
metadata (title, thumbnail, uploadDate; no duration) and the JAV code (BKD-368 style)
as a tag. Playback: server buttons are <a class="myLink" href="<embed>"> (streamtape,
voe, doodstream, emturbovid) whose href sits in the raw HTML; the generic _embed_iframe
extractor already resolves those via its anchor-hoster pattern, so javflix registers
under sitetag "javflix" with a thin wrapper that drops the players.mp4 placeholder.
Added emturbovid to the anchor-hoster host list.

Verified end-to-end on prod: scrape a listing -> RawScene with metadata + code tag,
resolve -> emturbovid/voe/doodstream hoster sources (all Goon-playable).

NOT registered in ALL_BROWSE_SCRAPERS yet. JAV is a separate vertical (user decision)
that must be gated out of the main scenes feed before ingest so it does not flood the
western catalog. Next: feed gating (exclude JAV origins by default) + a mobile JAV tab
+ on-device playback test, then enable scheduled ingest. jav.guru / vjav / supjav
follow the same pattern.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-10 10:58:34 +02:00
..
api fix(mobile): stop Scenes feed repeating on scroll + mute audio during 2x hold 2026-07-07 23:59:28 +02:00
connectors feat(jav): javflix.cc scraper + extractor (first JAV source, gated off main feed) 2026-07-10 10:58:34 +02:00
enrich fix(movie-enrich): studio/performer disambiguation for generic TPDB titles 2026-07-05 11:31:38 +02:00
extractors feat(jav): javflix.cc scraper + extractor (first JAV source, gated off main feed) 2026-07-10 10:58:34 +02:00
models fix(watchporn): re-resolve stale CDN URL in-player, drop WebView page fallback 2026-07-05 01:18:08 +02:00
normalize feat(ingest): SQL phash match, tag inference + backfill, clip-store skip, browse tubes, watchdog 2026-06-01 15:07:35 +02:00
resolve feat(movies): TPDB movie enrichment + dedup 2026-07-02 11:36:36 +02:00
scheduler feat(movies): TPDB movie enrichment + dedup 2026-07-02 11:36:36 +02:00
templates feat(seo): public HTML SEO router + templates; add CLAUDE.md; ignore .nimbalyst 2026-05-31 16:29:59 +02:00
__init__.py Initial commit 2026-05-20 10:10:22 +02:00
auth.py Initial commit 2026-05-20 10:10:22 +02:00
config.py feat(movies): TPDB movie enrichment + dedup 2026-07-02 11:36:36 +02:00
db.py Initial commit 2026-05-20 10:10:22 +02:00
ingest.py fix(favorites): exclude bulk-backfill scenes from "+N new" (tube fake dates) 2026-07-01 16:04:01 +02:00
main.py feat(sources): 0-5★ ranking on Sites (freshness/metadata/plays) + playback telemetry 2026-06-22 10:00:59 +02:00