Skip to main content
User Guide

Creating Extensions

A brief developer overview for writing your own scraper extensions for the NeoQN framework.

Getting Started

NeoQN provider plugins are standard Android APKs containing JavaScript or Kotlin-based compiled scrapers that interface with the host app.

Prerequisites

  • Android Studio or command-line developer tools installed.
  • A basic understanding of scraping APIs, CSS selectors, or HTML parsing.

Writing a Basic Scraper

Every extension must implement a standard manifest and scraper class:

json
{
  "id": "my-custom-provider",
  "name": "My Custom Provider",
  "version": 1,
  "baseUrl": "https://example-novel-site.com"
}

Core Methods

You must implement the three core functions of the extension contract:

  1. searchNovels(query): Searches the host website and returns a listing of matching titles, URLs, and cover images.
  2. getChapters(novelUrl): Scrapes the list of chapters from the table of contents.
  3. getChapterContent(chapterUrl): Extracts the reading body content text.
Tip

Use standard HTML element cleaners to remove script tags, ads, and formatting wrappers before returning text content.


Testing Your Provider

You can sideload extensions locally during development:

  1. Enable Developer Mode in NeoQN settings.
  2. Build your APK and copy it to your device storage.
  3. Use the Import Provider option and select your debug APK.
Warning

Ensure you correctly handle network timeouts and Cloudflare challenges to prevent the app from freezing on mobile connections.