Skip to main content

Official terminal client for RDTvlokip Search — an independent, privacy-first French search engine

Project description

RDTSearch

Official terminal client for RDTvlokip Search — an independent, privacy-first French search engine (~4.6M indexed pages, in-house crawler).

Single file, zero dependencies (Python 3.8+ stdlib only), bilingual French / English, Windows first, Linux/macOS supported.

Features

  • Search the index with highlighted snippets, featured snippets, tracker and adult-content flags
  • Domain tools: indexing status, submission tracking, continuous indexing watch
  • Engine statistics: pages/domains/URLs totals, daily and hourly crawl charts
  • Backlink analysis (SEO): global link graph stats, top linked domains, per-domain backlinks (source, anchor, nofollow/sponsored/UGC), anchor-text distribution, evolution history, CSV/JSON export
  • SEO duel (compare): two domains side by side — indexed pages, inbound links, top anchor, winner
  • Self-diagnostic (doctor): terminal, configuration and server health in one command
  • Local snapshot cache: backlink analyses are kept per day to save the anonymous quota
  • Autocomplete suggestions and server health (latency, server time)
  • Interactive TUI: framed interface with live stats sidebar, Tab completion and command palette (with aliases), recent-domain completion for domain arguments, type-to-filter menus, fish-style ghost completion, input history, arrow-key menus, contextual footer, result detail sheets with score breakdown, open results in your browser or copy their URL (c <n>), per-command help (/help backlinks), and Vloki — a pixel-art spider companion on the home screen with rotating tips, who waves at you on launch and every 10 idle seconds
  • Subtle animations (optional, on by default): eased counters and bars, top-down view reveal, view-pill flash, error shake, sparklines drawn in, breathing watch indicator with a live sparkline, notice flash, spinner with elapsed time and request steps — all skipped outside a TTY
  • Settings (/settings in the TUI, rdtsearch settings in the CLI): language, theme (default / ocean / high-contrast), glyphs (UTF/ASCII), colors, animations, adult-content filter, persistent history, API timeout, default stats period, sidebar, watch bell — with reset, cache purge and a terminal diagnostic
  • Scripting friendly: --json on every command, piped mode, colors auto-disabled outside a TTY, HTTP 429 / Retry-After handled

Installation

pip install rdtsearch

or, isolated (recommended for CLI tools):

pipx install rdtsearch

Requires Python 3.8+. No third-party packages.

CLI usage

rdtsearch search "debian" [-p N]       search the index (page N)
rdtsearch domain example.com           indexing status of a domain
rdtsearch watch example.com [-i SEC]   watch indexing continuously (default 300s)
rdtsearch compare a.com b.com          SEO duel between two domains
rdtsearch stats [-d DAYS]              engine and crawler statistics (default: stats_days setting)
rdtsearch suggest "linu"               autocomplete suggestions
rdtsearch health                       server health and latency
rdtsearch doctor                       client + server self-diagnostic
rdtsearch status example.com           submission status of a domain
rdtsearch settings [KEY [VALUE]]       show or change persistent settings
                                       keys: lang theme glyphs colors hide_adult history
                                             timeout animations stats_days sidebar bell
                                       actions: reset, clear-cache

rdtsearch backlinks stats              global link graph statistics
rdtsearch backlinks top [-n N]         domains with the most backlinks
rdtsearch backlinks detail example.com backlinks of a domain (source, anchor, flags)
rdtsearch backlinks anchors example.com anchor-text distribution
rdtsearch backlinks history example.com backlink evolution snapshots
rdtsearch backlinks export example.com [--format csv|json] [-o FILE]

Global options:

Option Effect
--json raw JSON output (every command)
--lang auto|fr|en interface language (default: saved setting or OS language)
--timeout S API timeout in seconds, 1–120 (default: 15)
--no-color disable colors
--tui force the interactive interface
--version show version

backlinks detail and /backlinks reuse today's local snapshot to save the anonymous quota; add --fresh to query the API again.

Interactive TUI

Run rdtsearch with no arguments in a terminal.

  • Type anything and press Enter to search
  • Digits open a result in your browser, i <n> shows a result detail sheet (score breakdown), c <n> copies its URL to the clipboard, n / p change page
  • Slash commands: /backlinks /clear /compare /doctor /domain /health /help /refresh /settings /stats /status /suggest /watch /quit/help <command> shows a focused help sheet with examples and aliases
  • /watch <domain> [sec] runs a live indexing monitor (default 30s): the frame redraws with a timestamped change log and a live sparkline — press any key to stop; optional bell on change
  • /compare a.com b.com, /doctor and /backlinks history <domain> (evolution sparkline + snapshot table) are available in the TUI too, as full views
  • /domain shows the domain's share of the whole index; /stats shows the trend vs the previous period
  • Tab: command completion, recent-domain completion after /domain, /backlinks, /status, /watch, /compare, command-name completion after /help, contextual menus (suggestions, results, periods, settings), and a full command palette on an empty line — in the results menu, i opens the detail sheet instead of the browser
  • Type-to-filter menus: typing letters filters any menu live; Backspace erases the filter, digits still jump to an entry
  • Ghost completion (fish-style): the likely continuation appears in grey, accept it with or Tab at the end of the line
  • ↑ ↓ input history, Esc clears the line, commands are colored green (valid) or red (unknown) as you type

Settings

Persistent settings: interface language, theme (default / ocean / high-contrast — colors the frame border, header bar, view pills and logo), glyphs (auto / UTF / ASCII), colors (auto / on / off), animations, adult-content filter, history persistence (off by default), API timeout, default stats period, sidebar visibility, and watch bell. A diagnostic panel shows the detected terminal size, encoding, active glyphs/colors and OS language.

  • TUI: /settings, then Tab or the setting's number (113); the current value is checked and preselected, and after saving you return to the settings menu to chain changes (Esc to leave); the colors/glyphs menus preview the highlighted value live; modified settings are marked with a bullet. Direct form: /settings lang fr, /settings reset, /settings clear-cache.
  • CLI: rdtsearch settings (overview, --json supported), rdtsearch settings timeout 30 (set and save), rdtsearch settings lang (show one value), rdtsearch settings reset, rdtsearch settings clear-cache. Unlike --lang/--timeout (session only), settings persists.

Config lives in %APPDATA%\rdtsearch\ (Windows) or ~/.config/rdtsearch/ (Unix).

Anonymous limits

The backlinks API has a free anonymous tier (server-side): 10 backlinks per analysis, 3 analyses per day, export reserved for premium accounts. The client reports these limits clearly and caches each analysis locally so re-viewing it does not spend quota.

Terminal support

  • Full Unicode interface in modern terminals: Windows Terminal, VS Code, ConEmu/Cmder, and all Unix terminals
  • Automatic ASCII fallback in the legacy Windows console (cmd.exe / conhost); forceable via /settings
  • Piped or redirected output falls back to a plain, script-friendly mode

License

GNU AGPLv3 — free software; if you run a modified version as a network service, you must offer its source to users.

Links

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

rdtsearch-0.15.0.tar.gz (60.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

rdtsearch-0.15.0-py3-none-any.whl (60.8 kB view details)

Uploaded Python 3

File details

Details for the file rdtsearch-0.15.0.tar.gz.

File metadata

  • Download URL: rdtsearch-0.15.0.tar.gz
  • Upload date:
  • Size: 60.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.11

File hashes

Hashes for rdtsearch-0.15.0.tar.gz
Algorithm Hash digest
SHA256 4a5af52737d6dcd650138dcd80d3caf3dcd8127c01f08a6dcc61f420a5ee3ac8
MD5 3564abb2898a4966f89368b46abc32e6
BLAKE2b-256 fb2165b6d13661768aa778029eff1c6cf718b5799dcf8a90212579fc10833235

See more details on using hashes here.

File details

Details for the file rdtsearch-0.15.0-py3-none-any.whl.

File metadata

  • Download URL: rdtsearch-0.15.0-py3-none-any.whl
  • Upload date:
  • Size: 60.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.11

File hashes

Hashes for rdtsearch-0.15.0-py3-none-any.whl
Algorithm Hash digest
SHA256 d8c8bef99e62b30cae79f528ed789ce0ed7e27c5843591b55b1fcc88050dd3a1
MD5 e743340da0431578ba29d871a2e002bf
BLAKE2b-256 181041ae35e4d84ac928719e646b5ae6f6e07b3c4a1f7e91391038a6fac37b04

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page