Skip to main content

Andrew Lang's Fairy Books provider skill for ovos-common-reading-pipeline-plugin

Project description

Andrew Lang Tales (provider)

A provider skill for ovos-common-reading-pipeline-plugin, delivering Andrew Lang's twelve "Coloured" Fairy Books.

"These fairy tales are the oldest stories in the world." — Andrew Lang, preface to The Green Fairy Book

Tests PyPI version

This skill has no standalone voice interface. It registers no intents and never speaks. It only answers ovos.common_reading.* bus messages, so you also need ovos-common-reading-pipeline-plugin installed and added to your pipeline config for it to be useful at all.

English only, no translation. Unlike ovos-skill-andersen-tales/ ovos-skill-grimm-tales (real per-language sources) or ovos-skill-ovosblog/ovos-skill-arxiv-papers (machine-translated), this provider has no non-English content and does not attempt to translate - the stories themselves are long, literary prose, where per-request machine translation is both expensive and a much bigger quality risk than translating a short blog post or paper abstract (see ovos-common-reading-pipeline-plugin#5 for the reasoning). Your OVOS device's language needs to be set to English (en-*) to use this provider at all - on any other language, the skill never loads (see "Languages" below).

Install

pip install ovos-skill-andrew-lang-tales ovos-common-reading-pipeline-plugin

Story index

Unlike the other providers here, the story index (title, book, author, Project Gutenberg anchor per story) is bundled with this package (locale/en-us/index.json), not scraped live - browsing/matching needs no internet at all. Only fetching a specific story's actual text (once chosen) needs a live request to Project Gutenberg.

382 stories across 11 of Andrew Lang's 12 "Coloured" Fairy Books (the 12th, the Olive Fairy Book, uses an incompatible page-based anchor scheme on Gutenberg and isn't included - tracked as a known gap, see scripts/build_lang_index.py's docstring).

The index was built once via scripts/build_lang_index.py, which:

  • Fetches Andrew Lang's master index (Gutenberg ebook #30580)
  • Repairs anchors for books Gutenberg has since re-published with a different scheme (Red and Brown Fairy Books)
  • Validates every entry actually extracts real text before including it

Languages

English only. Andrew Lang's Fairy Books are sourced from Project Gutenberg in English; no other language editions exist for this collection, and this provider makes no attempt to machine-translate (see the note above). On any other device language, this provider never loads at all: initialize() checks the device's language against SUPPORTED_LANGUAGES = {"en"} before loading the index or registering any bus events, and logs a clear message explaining why, rather than loading fully and declining searches at runtime. Set your OVOS device's language to English (en-*) to use this provider.

Collection hints

Responds to collection_hint values like "andrew lang", "lang", "the fairy books", matched fuzzily (see COLLECTION_ALIASES in __init__.py). "lang" alone is short enough to be worth double-checking for false positives - verified via match_one against "grimm", "andersen", "arxiv", "language", etc.

Content type

Identifies as content_type: "story" or "tale". A search with a content_type hint for anything else (e.g. "article", "paper") gets no response from this provider.

Credits

Content sourced from Project Gutenberg. Scraping/extraction logic ported from ovos-skill-worldtales (archived - this provider supersedes it).

Category

Entertainment

Tags

#stories #fairytales #gutenberg #provider

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

ovos_skill_andrew_lang_tales-0.1.2.tar.gz (32.3 kB view details)

Uploaded Source

Built Distribution

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

ovos_skill_andrew_lang_tales-0.1.2-py3-none-any.whl (27.6 kB view details)

Uploaded Python 3

File details

Details for the file ovos_skill_andrew_lang_tales-0.1.2.tar.gz.

File metadata

File hashes

Hashes for ovos_skill_andrew_lang_tales-0.1.2.tar.gz
Algorithm Hash digest
SHA256 2674e1943684bf558f950b0f8c5f865f0af825e529eca896c85f89dfd58b7185
MD5 37756707b6161548edb563a37bbd3732
BLAKE2b-256 0dc9f22ba531f03e79fcbb3265c393db2847b19afe490df3adee301904f9a687

See more details on using hashes here.

Provenance

The following attestation bundles were made for ovos_skill_andrew_lang_tales-0.1.2.tar.gz:

Publisher: publish.yml on andlo/ovos-skill-andrew-lang-tales

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ovos_skill_andrew_lang_tales-0.1.2-py3-none-any.whl.

File metadata

File hashes

Hashes for ovos_skill_andrew_lang_tales-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 fcc1ba339b66b84c3f025ddd9fba3fd565b85b56594b2828c16e02c02e76faf7
MD5 2a0d1c90ae534ac9eaa41f1fb4a037f4
BLAKE2b-256 7dc6ce222f56e29cd95dda276d307e9a59fcdfb4ddc89fd877dc98bc016b0c48

See more details on using hashes here.

Provenance

The following attestation bundles were made for ovos_skill_andrew_lang_tales-0.1.2-py3-none-any.whl:

Publisher: publish.yml on andlo/ovos-skill-andrew-lang-tales

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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