UNPKG

wikipedia-summary

Version:

Wikipedia API wrapper โ€” summaries, search, random articles, On This Day events, multi-language support.

124 lines (88 loc) โ€ข 3.22 kB
# wikipedia-summary ๐Ÿ“š Wikipedia API wrapper for Node.js โ€” summaries, search, random articles, On This Day events, multi-language support. ## ๐Ÿš€ What's New in v2.0.0 - **`search()`** โ€” Search Wikipedia and get matched articles - **`getRandomArticle()`** โ€” Discover random Wikipedia articles - **`getOnThisDay()`** โ€” Historical events, births, deaths for today's date - **`getMultipleSummaries()`** โ€” Fetch multiple topics at once - **Thumbnail & image URLs** โ€” Both original and thumbnail images - **Last modified date** โ€” Article freshness info - **Input validation** โ€” Better error messages ## ๐Ÿ“ฆ Installation ```bash npm install wikipedia-summary ``` ## ๐Ÿ“‹ Usage ### Get Summary ```js const { getSummary } = require("wikipedia-summary"); const article = await getSummary("Node.js"); console.log(article.title); // "Node.js" console.log(article.extract); // Full summary text console.log(article.pageUrl); // Wikipedia page URL console.log(article.imageUrl); // Main image URL console.log(article.thumbnailUrl); // Thumbnail URL console.log(article.lastModified); // Last edit timestamp ``` ### Multi-language Support ```js const { getSummary } = require("wikipedia-summary"); // Turkish const tr = await getSummary("Istanbul", "tr"); // German const de = await getSummary("Berlin", "de"); // Japanese const ja = await getSummary("Tokyo", "ja"); ``` ### Search Wikipedia ```js const { search } = require("wikipedia-summary"); const results = await search("artificial intelligence", "en", 5); results.forEach(r => { console.log(`${r.title} - ${r.snippet}`); console.log(` ${r.pageUrl}`); }); ``` ### Random Article ```js const { getRandomArticle } = require("wikipedia-summary"); const random = await getRandomArticle(); console.log(`${random.title}: ${random.extract}`); // Random article in Turkish const randomTR = await getRandomArticle("tr"); ``` ### On This Day ```js const { getOnThisDay } = require("wikipedia-summary"); const events = await getOnThisDay("en", "all"); events.forEach(event => { console.log(`[${event.type}] ${event.year || ''} - ${event.text}`); }); // Filter by type: "selected", "births", "deaths", "events", "holidays" const births = await getOnThisDay("en", "births"); ``` ### Multiple Summaries ```js const { getMultipleSummaries } = require("wikipedia-summary"); const topics = ["JavaScript", "Python", "Rust", "Go"]; const summaries = await getMultipleSummaries(topics); summaries.forEach(s => { if (s.error) { console.log(`${s.title}: ${s.error}`); } else { console.log(`${s.title}: ${s.extract.substring(0, 100)}...`); } }); ``` ## ๐Ÿ“ก API | Function | Description | |----------|-------------| | `getSummary(topic, lang?)` | Get article summary | | `search(query, lang?, limit?)` | Search Wikipedia articles | | `getRandomArticle(lang?)` | Get a random article | | `getOnThisDay(lang?, type?)` | Get On This Day events | | `getMultipleSummaries(topics[], lang?)` | Batch fetch summaries | ### Language Support All functions accept a language code as parameter. Examples: `"en"`, `"tr"`, `"de"`, `"fr"`, `"es"`, `"ja"`, `"zh"`, `"pt"`, `"ru"`, `"ar"`. ## ๐Ÿ“„ License MIT ยฉ Utku Berkay Koรง