npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@drakulavich/uae-news-digest

v0.0.2

Published

Daily UAE news digest from Google News RSS with optional DeepL translation

Downloads

218

Readme

🇦🇪 uae-news-digest

CI npm License: MIT Bun

Daily news digest from Google News RSS. Deterministic filtering, no ML. Supports multiple regions.

  • Multi-region — UAE (default), US, UK, Germany, Russia — or any custom RSS URL
  • Source scoring — Reuters, The National, Gulf News, Khaleej Times ranked higher
  • Fuzzy dedup — Jaccard similarity with synonym normalization catches duplicate stories
  • DeepL translation — optional, any language via DeepL API
  • Emoji categories — 🌧️ weather, 🛡️ defense, 📉 property, ✈️ aviation, ⛴️ shipping, and more
  • Agent-friendly--json outputs a structured envelope for automation

Install

bun install -g @drakulavich/uae-news-digest

Or run from source:

git clone https://github.com/drakulavich/uae-news-digest.git
cd uae-news-digest
bun install
bun link

Usage

uae-news-digest                                    # fetch + print UAE news (default)
uae-news-digest --region us                         # US news
uae-news-digest --region de                         # Germany news
uae-news-digest --dry-run                           # preview without updating state
uae-news-digest --hours 12 --limit 10               # last 12h, max 10 items
uae-news-digest --json                              # output as JSON for agents/scripts
DEEPL_AUTH_KEY=xxx uae-news-digest --target-lang DE  # translate to German via DeepL

| Flag | Default | Description | |------|---------|-------------| | --region <code> | uae | News region preset (uae, us, uk, de, ru) | | --hours <n> | 36 | Lookback window in hours | | --limit <n> | 6 | Max items in digest | | --target-lang <code> | | DeepL target language (e.g. DE, FR, JA). Requires DEEPL_AUTH_KEY | | --rss-url <url> | | Custom RSS URL (overrides --region) | | --state-file <path> | ./seen_titles.txt | Seen-items state file | | --timeout-ms <n> | 15000 | RSS fetch timeout | | --dry-run | false | Preview without updating state | | --json | false | Output as JSON (agent-friendly envelope) |

Example Output

🇦🇪 UAE Latest News Digest

🛡️ UAE intercepts 79 Iranian strike assets (The National, 2h ago)
📉 Dubai property sales drop more than 30% (Anadolu Ajansı, 5h ago)
⛴️ Container ship incident at Khor Fakkan (Reuters, 3h ago)
✈️ Abu Dhabi airport reopens after rain (Khaleej Times, 1h ago)
🌧️ Unstable weather hits some emirates (Gulf News, 4h ago)
🛢️ Oil prices: OPEC+ mulls output increase (CNBC, 6h ago)

Programmatic API

import { parseRss, buildDigest, runDigest, renderDigest } from "@drakulavich/uae-news-digest/core";

How It Works

uae-news-digest --region us --hours 12 --limit 10
  │
  ├── Region ────── resolve RSS URL from preset (or --rss-url override)
  │
  ├── Fetch RSS ─── Google News RSS feed
  │
  ├── Filter ────── skip: opinion, tabloids, sports, travel
  │
  ├── Score ─────── +3 preferred source, +2 UAE mention, +2 priority topic
  │
  ├── Deduplicate ─ exact key match + Jaccard fuzzy (threshold 0.45)
  │
  ├── Translate ─── DeepL API (optional, when --target-lang set)
  │
  └── Render ────── region flag + emoji + title + source + hours ago

State file (seen_titles.txt) tracks seen articles to avoid repeats across runs.

Requirements

License

Made with 💛🩵 Published under MIT License.