diff --git a/src/clis/medium/publication.yaml b/src/clis/medium/publication.yaml new file mode 100644 index 00000000..c772ae91 --- /dev/null +++ b/src/clis/medium/publication.yaml @@ -0,0 +1,32 @@ +site: medium +name: publication +description: Get recent articles from a Medium publication +domain: medium.com +strategy: public +browser: false + +args: + name: + type: string + required: true + description: The publication name/slug (e.g. netflix-techblog) + limit: + type: int + default: 10 + description: Max number of stories + +pipeline: + - fetch: + url: https://api.rss2json.com/v1/api.json?rss_url=https://medium.com/feed/${{ args.name }} + + - select: items + + - map: + title: "${{ item.title }}" + author: "${{ item.author }}" + date: "${{ item.pubDate }}" + url: "${{ item.link }}" + + - limit: ${{ args.limit }} + +columns: [title, author, date, url] diff --git a/src/clis/medium/tag.yaml b/src/clis/medium/tag.yaml new file mode 100644 index 00000000..8168c247 --- /dev/null +++ b/src/clis/medium/tag.yaml @@ -0,0 +1,32 @@ +site: medium +name: tag +description: Get top articles for a Medium tag +domain: medium.com +strategy: public +browser: false + +args: + tag: + type: string + required: true + description: The tag to search for (e.g. programming) + limit: + type: int + default: 10 + description: Max number of stories + +pipeline: + - fetch: + url: https://api.rss2json.com/v1/api.json?rss_url=https://medium.com/feed/tag/${{ args.tag }} + + - select: items + + - map: + title: "${{ item.title }}" + author: "${{ item.author }}" + date: "${{ item.pubDate }}" + url: "${{ item.link }}" + + - limit: ${{ args.limit }} + +columns: [title, author, date, url] diff --git a/src/clis/medium/user.yaml b/src/clis/medium/user.yaml new file mode 100644 index 00000000..4a2aeed1 --- /dev/null +++ b/src/clis/medium/user.yaml @@ -0,0 +1,31 @@ +site: medium +name: user +description: Get recent articles by a Medium user +domain: medium.com +strategy: public +browser: false + +args: + username: + type: string + required: true + description: The medium username (without the @ symbol) + limit: + type: int + default: 10 + description: Max number of stories + +pipeline: + - fetch: + url: https://api.rss2json.com/v1/api.json?rss_url=https://medium.com/feed/@${{ args.username }} + + - select: items + + - map: + title: "${{ item.title }}" + date: "${{ item.pubDate }}" + url: "${{ item.link }}" + + - limit: ${{ args.limit }} + +columns: [title, date, url]