Skip to content

feat: add GitHub Trending, Binance, and Weather adapters (24 commands)#214

Open
0xsline wants to merge 2 commits intojackwener:mainfrom
0xsline:feat/github-trending-binance-weather
Open

feat: add GitHub Trending, Binance, and Weather adapters (24 commands)#214
0xsline wants to merge 2 commits intojackwener:mainfrom
0xsline:feat/github-trending-binance-weather

Conversation

@0xsline
Copy link
Contributor

@0xsline 0xsline commented Mar 21, 2026

Summary

Add 3 new adapters with 24 commands covering developer trends, crypto trading data, and weather forecasts.

New Commands

GitHub Trending (browser mode, public pages)

Command Description Example
repos Trending repositories opencli github-trending repos --language python --since weekly
developers Trending developers opencli github-trending developers --limit 10

Binance (public API via data-api.binance.vision, no auth)

Command Description Example
top Top pairs by 24h volume opencli binance top --limit 10
price Single pair 24h stats opencli binance price --symbol BTCUSDT
prices All pair prices opencli binance prices --limit 10
ticker 24h ticker stats opencli binance ticker --limit 10
gainers Top gainers by 24h change opencli binance gainers --limit 10
losers Top losers by 24h change opencli binance losers --limit 10
trades Recent trades opencli binance trades --symbol BTCUSDT
depth Order book bids opencli binance depth --symbol BTCUSDT
asks Order book asks opencli binance asks --symbol BTCUSDT
klines Candlestick data opencli binance klines --symbol BTCUSDT
pairs Active trading pairs opencli binance pairs --limit 10

Weather / Open Meteo (free public API, no key needed)

Command Description Example
current Current weather opencli weather current --city tokyo
forecast Daily forecast opencli weather forecast --city sydney --days 7
hourly Hourly forecast opencli weather hourly --city london --hours 12
search City geocoding opencli weather search --query melbourne
air Air quality (simple) opencli weather air --city beijing
air-quality Detailed air quality opencli weather air-quality --city tokyo
sunrise Sunrise/sunset + UV opencli weather sunrise --city paris
wind Wind forecast opencli weather wind --city sydney
precipitation Rain/snow forecast opencli weather precipitation --city tokyo
history Historical weather opencli weather history --city melbourne --days 7
compare Multi-city comparison opencli weather compare --cities "tokyo,sydney,london"

Technical Notes

  • GitHub Trending uses DOM scraping of article.Box-row elements (no official API)
  • Binance uses data-api.binance.vision mirror to avoid geo-restrictions on api.binance.com
  • Weather commands use 2-step geocoding (city name → lat/lon → weather API) via browser evaluate
  • Weather search is the only fetch-only command (no browser needed)

Test plan

  • github-trending repos — MoneyPrinterV2 379 stars today, systemd 112 stars
  • github-trending developers — Nathan Brake, Azure SDK Bot
  • binance top — trading pairs with volume
  • binance price --symbol BTCUSDT — BTC $70,632
  • binance price --symbol ETHUSDT — ETH $2,148
  • binance prices/ticker/gainers/losers — all return data
  • binance trades/depth/asks/klines/pairs — all return data
  • weather current --city melbourne — 15.2°C, Fog, 99% humidity
  • weather forecast --city tokyo — 7-day forecast
  • weather hourly/search/air/air-quality/sunrise/wind/precipitation/history/compare — all return data
  • All 24 commands double-verified with live data
  • Doc coverage passes (53/53)
  • All 258 existing unit tests pass (zero regression)

0xsline added 2 commits March 22, 2026 01:38
GitHub Trending (2 commands, browser mode):
- repos: trending repositories with stars, forks, language filter
- developers: trending developers with popular repos
  Supports --since daily/weekly/monthly and --language filter

Binance (11 commands, public API via data-api.binance.vision):
- top: top trading pairs by 24h volume
- price: single pair 24h price stats
- prices: latest prices for all pairs
- ticker: 24h ticker statistics
- gainers: top gaining pairs by 24h change
- losers: top losing pairs by 24h change
- trades: recent trades for a pair
- depth: order book bid prices
- asks: order book ask prices
- klines: candlestick/kline data
- pairs: list active trading pairs

Weather / Open Meteo (11 commands, free public API, no key needed):
- current: current weather for a city
- forecast: daily forecast up to 16 days
- hourly: hourly forecast
- search: city geocoding lookup
- air: air quality index (simple)
- air-quality: detailed air quality (US/EU AQI, PM2.5, PM10, ozone, NO2, SO2)
- sunrise: sunrise/sunset times with UV index
- wind: detailed wind forecast with gusts and 80m altitude
- precipitation: rain/snow forecast with probability
- history: historical weather up to 92 past days
- compare: side-by-side weather comparison across cities

All 24 commands tested with live data. 258 existing tests pass.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant