mirror of
https://github.com/jackwener/OpenCLI.git
synced 2026-09-14 18:25:42 +08:00
127a974ecd
Expand HackerNews from 1 command to 8, covering all major HN use cases. All YAML adapters, strategy: public, browser: false. - new/best/ask/show/jobs: Firebase API list endpoints with deleted/dead filtering - search: Algolia API with query + sort (relevance/date) - user: Firebase user profile with date formatting - top.yaml: add filter for deleted/dead items + dynamic pre-fetch limit - E2E tests for all 7 new commands - Update README, README.zh-CN, adapter docs Co-authored-by: jackwener <jakevingoo@gmail.com>
39 lines
813 B
YAML
39 lines
813 B
YAML
site: hackernews
|
|
name: top
|
|
description: Hacker News top stories
|
|
domain: news.ycombinator.com
|
|
strategy: public
|
|
browser: false
|
|
|
|
args:
|
|
limit:
|
|
type: int
|
|
default: 20
|
|
description: Number of stories
|
|
|
|
pipeline:
|
|
- fetch:
|
|
url: https://hacker-news.firebaseio.com/v0/topstories.json
|
|
|
|
- limit: "${{ Math.min((args.limit ? args.limit : 20) + 10, 50) }}"
|
|
|
|
- map:
|
|
id: ${{ item }}
|
|
|
|
- fetch:
|
|
url: https://hacker-news.firebaseio.com/v0/item/${{ item.id }}.json
|
|
|
|
- filter: item.title && !item.deleted && !item.dead
|
|
|
|
- map:
|
|
rank: ${{ index + 1 }}
|
|
title: ${{ item.title }}
|
|
score: ${{ item.score }}
|
|
author: ${{ item.by }}
|
|
comments: ${{ item.descendants }}
|
|
url: ${{ item.url }}
|
|
|
|
- limit: ${{ args.limit }}
|
|
|
|
columns: [rank, title, score, author, comments]
|