Skip to content

Comments

feat(booktoki): support chapter fetch + scrape JSON import#15

Merged
anantham merged 1 commit intomainfrom
feat/booktoki-import
Dec 24, 2025
Merged

feat(booktoki): support chapter fetch + scrape JSON import#15
anantham merged 1 commit intomainfrom
feat/booktoki-import

Conversation

@anantham
Copy link
Owner

Summary

Add first-class BookToki support: fetch/parse chapters via adapters, and import BookToki Chrome extension scrape JSON by converting it into lexiconforge-full-1.

Changes

  • config/constants.ts: register booktoki468.com as a supported site
  • services/adapters.ts: add BookTokiAdapter + wire into getAdapter()
  • services/import/booktoki.ts: detect + convert BookToki scrape payload → LexiconForge full payload
  • services/importService.ts: accept BookToki payloads in importFromUrl / importFromFile
  • tests/services/importService.test.ts: add BookToki conversion coverage
  • tests/services/adapters.booktoki.test.ts: ensure BookToki is considered supported

Testing

  • npx tsc --noEmit
  • npm test -- --run

Notes

This PR is intentionally UI-light: it only enables fetching + importing; UX affordances can be layered later.

Context: BookToki chapters were only usable via manual workflows.

Changes: Add BookToki adapter + supported site entry; accept BookToki Chrome extension JSON by converting to lexiconforge-full-1 before import.

Impact: Users can fetch booktoki chapters directly and import scraped chapter dumps for offline translation.

Tests: npx tsc --noEmit; npm test -- --run

Docs: Updated docs/WORKLOG.md
@vercel
Copy link

vercel bot commented Dec 24, 2025

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Review Updated (UTC)
lexicon-forge Ready Ready Preview, Comment Dec 24, 2025 10:57am

@anantham anantham merged commit d990139 into main Dec 24, 2025
3 checks passed
@anantham anantham deleted the feat/booktoki-import branch December 24, 2025 11:42
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