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 🙏

© 2024 – Pkg Stats / Ryan Hefner

@actionsflow/trigger-reddit

v1.10.0

Published

Actionsflow trigger reddit

Downloads

188

Readme

@actionsflow/trigger-reddit

This is a reddit trigger of Actionsflow. reddit trigger is triggered when new posts or comments of reddit are detected.

This is an official trigger, you don't need to install it manually.

View trigger on Github

Usage

We use Reddit RSS to implement this trigger, so you need to provide a reddit posts or comment URL to watch the reddit updates.

All hot feed:

on:
  reddit:
    url: https://www.reddit.com/hot/

New Hot Post in Subreddit:

on:
  reddit:
    url: https://www.reddit.com/r/news/

new Post in Subreddit:

on:
  reddit:
    url: https://www.reddit.com/r/news/new/

new Post by User:

on:
  reddit:
    url: https://www.reddit.com/user/alienth/

The comments on a specific reddit post:

on:
  reddit:
    url: https://www.reddit.com/r/technology/comments/1uc9ro/wearing_a_mind_controlled_exoskeleton_a_paralyzed/

A multireddit:

on:
  reddit:
    url: https://www.reddit.com/r/WTF+news

Multiple reddit:

on:
  reddit:
    url:
      - https://www.reddit.com/user/alienth/
      - https://www.reddit.com/r/news/
    config:
      limit: 15

Or, you can use the full RSS URL:

on:
  reddit:
    url: https://www.reddit.com/r/news/.rss

Options

  • url, required, string or string[], when url is string[], then multiple Reddit feeds can trigger the action. All reddit URL supported .rss suffix is valid value.
  • source, optional, rss or json, the default value is rss, if source is rss, we'll use https://www.reddit.com/hot/.rss as the source, if source is json, we'll use https://www.reddit.com/hot/.json as the source
  • client, optional, axios or puppeteer-fetch, only works when source is json, the default value is axios
  • sleep, optional, default sleep time ms, only works when source is json, the default value is 2000
  • requestConfig, optional, if source is json, you can provide a request config for Axios or puppeteer-fetch config

You can use General Config for Actionsflow Trigger for more customization.

Outputs

RSS Source Outputs

By default, we use rss-parser for parse RSS file, the outputs are same as rss-parser

A default RSS outputs example:

{
  "title": "Kentucky lawmaker, sponsor of 'Breonna's Law,' back on protest line after arrest",
  "link": "https://www.reddit.com/r/news/comments/j08qih/kentucky_lawmaker_sponsor_of_breonnas_law_back_on/",
  "pubDate": "2020-09-26T16:09:25.000Z",
  "author": "/u/PotaTribune",
  "content": "&#32; submitted by &#32; <a href=\"https://www.reddit.com/user/PotaTribune\"> /u/PotaTribune </a> <br/> <span><a href=\"https://www.nbcnews.com/news/us-news/kentucky-lawmaker-sponsor-breonna-s-law-back-protest-line-after-n1241173\">[link]</a></span> &#32; <span><a href=\"https://www.reddit.com/r/news/comments/j08qih/kentucky_lawmaker_sponsor_of_breonnas_law_back_on/\">[comments]</a></span>",
  "contentSnippet": "submitted by    /u/PotaTribune  \n [link]   [comments]",
  "id": "t3_j08qih",
  "isoDate": "2020-09-26T16:09:25.000Z"
}

You can use the outputs like this:

on:
  reddit:
    url: https://www.reddit.com/r/news/
jobs:
  print:
    name: Print
    runs-on: ubuntu-latest
    steps:
      - name: Print Outputs
        env:
          title: ${{on.reddit.outputs.title}}
          contentSnippet: ${{on.reddit.outputs.contentSnippet}}
          link: ${{on.reddit.outputs.link}}
        run: |
          echo title: $title
          echo contentSnippet: $contentSnippet
          echo link: $link

JSON Source Outputs

{
  "approved_at_utc": null,
  "subreddit": "todayilearned",
  "selftext": "",
  "author_fullname": "t2_h1eln",
  "saved": false,
  "mod_reason_title": null,
  "gilded": 0,
  "clicked": false,
  "title": "TIL that elephants are tremendous distance swimmers. They can swim for up to six hours and 25 miles (48km). They are so buoyant that if they tire in the water, they can just rest by floating and will not sink. They can also use their trunk as a snorkel and dive.",
  "link_flair_richtext": [],
  "subreddit_name_prefixed": "r/todayilearned",
  "hidden": false,
  "pwls": 6,
  "link_flair_css_class": null,
  "downs": 0,
  "thumbnail_height": 140,
  "top_awarded_type": null,
  "hide_score": false,
  "name": "t3_jowv2r",
  "quarantine": false,
  "link_flair_text_color": "dark",
  "upvote_ratio": 0.98,
  "author_flair_background_color": null,
  "subreddit_type": "public",
  "ups": 26221,
  "total_awards_received": 19,
  "media_embed": {},
  "thumbnail_width": 140,
  "author_flair_template_id": null,
  "is_original_content": false,
  "user_reports": [],
  "secure_media": null,
  "is_reddit_media_domain": false,
  "is_meta": false,
  "category": null,
  "secure_media_embed": {},
  "link_flair_text": null,
  "can_mod_post": false,
  "score": 26221,
  "approved_by": null,
  "author_premium": false,
  "thumbnail": "https://a.thumbs.redditmedia.com/RU60Z6_dLKVp5tO10NIk30hr6ScY0Lb8sqZJg_HF198.jpg",
  "edited": false,
  "author_flair_css_class": null,
  "author_flair_richtext": [],
  "gildings": {
    "gid_1": 1
  },
  "post_hint": "link",
  "content_categories": null,
  "is_self": false,
  "mod_note": null,
  "created": 1604659565,
  "link_flair_type": "text",
  "wls": 6,
  "removed_by_category": null,
  "banned_by": null,
  "author_flair_type": "text",
  "domain": "wildanimalpark.org",
  "allow_live_comments": true,
  "selftext_html": null,
  "likes": null,
  "suggested_sort": null,
  "banned_at_utc": null,
  "url_overridden_by_dest": "https://www.wildanimalpark.org/can-elephants-swim/",
  "view_count": null,
  "archived": false,
  "no_follow": false,
  "is_crosspostable": true,
  "pinned": false,
  "over_18": false,
  "preview": {
    "images": [
      {
        "source": {
          "url": "https://external-preview.redd.it/8MOy01Lv_qLDv0lt4pdcP8FLxX9-J_SrpA-Y4J7n_GM.jpg?auto=webp&amp;s=ed716ceb9f991838d30e2c9f707d028b8648753a",
          "width": 1628,
          "height": 1628
        },
        "resolutions": [
          {
            "url": "https://external-preview.redd.it/8MOy01Lv_qLDv0lt4pdcP8FLxX9-J_SrpA-Y4J7n_GM.jpg?width=108&amp;crop=smart&amp;auto=webp&amp;s=560432cbbbb38b11be5430e2d6c9a7a00a9e44f3",
            "width": 108,
            "height": 108
          },
          {
            "url": "https://external-preview.redd.it/8MOy01Lv_qLDv0lt4pdcP8FLxX9-J_SrpA-Y4J7n_GM.jpg?width=216&amp;crop=smart&amp;auto=webp&amp;s=c1848e78179a12b7de621f8b770a0ecab59039e6",
            "width": 216,
            "height": 216
          },
          {
            "url": "https://external-preview.redd.it/8MOy01Lv_qLDv0lt4pdcP8FLxX9-J_SrpA-Y4J7n_GM.jpg?width=320&amp;crop=smart&amp;auto=webp&amp;s=dee1c0b8dfe64862381034aef79a528c6c87324f",
            "width": 320,
            "height": 320
          },
          {
            "url": "https://external-preview.redd.it/8MOy01Lv_qLDv0lt4pdcP8FLxX9-J_SrpA-Y4J7n_GM.jpg?width=640&amp;crop=smart&amp;auto=webp&amp;s=bef12ba6f9525fb95dfad51064d6dab6d7d31730",
            "width": 640,
            "height": 640
          },
          {
            "url": "https://external-preview.redd.it/8MOy01Lv_qLDv0lt4pdcP8FLxX9-J_SrpA-Y4J7n_GM.jpg?width=960&amp;crop=smart&amp;auto=webp&amp;s=34a82510942e8c947ccdce4a88071a3fd5ca444a",
            "width": 960,
            "height": 960
          },
          {
            "url": "https://external-preview.redd.it/8MOy01Lv_qLDv0lt4pdcP8FLxX9-J_SrpA-Y4J7n_GM.jpg?width=1080&amp;crop=smart&amp;auto=webp&amp;s=2564140094e81d200fc3b5494efd9072fa3866c6",
            "width": 1080,
            "height": 1080
          }
        ],
        "variants": {},
        "id": "UNJeyllQTIO9CfmcI9gDngsW3pKuJC_lOe1f83HzZAU"
      }
    ],
    "enabled": false
  },
  "all_awardings": [
    {
      "giver_coin_reward": 0,
      "subreddit_id": null,
      "is_new": false,
      "days_of_drip_extension": 0,
      "coin_price": 70,
      "id": "award_b92370bb-b7de-4fb3-9608-c5b4a22f714a",
      "penny_donate": 0,
      "award_sub_type": "GLOBAL",
      "coin_reward": 0,
      "icon_url": "https://i.redd.it/award_images/t5_22cerq/fukjtec638u41_TreeHug.png",
      "days_of_premium": 0,
      "tiers_by_required_awardings": null,
      "resized_icons": [
        {
          "url": "https://preview.redd.it/award_images/t5_22cerq/fukjtec638u41_TreeHug.png?width=16&amp;height=16&amp;auto=webp&amp;s=bbe4efb7b7ea2ecacd9609c937941282019a511f",
          "width": 16,
          "height": 16
        },
        {
          "url": "https://preview.redd.it/award_images/t5_22cerq/fukjtec638u41_TreeHug.png?width=32&amp;height=32&amp;auto=webp&amp;s=7aa65fa1bbd9dd3482e18cae220a6acbbabd6452",
          "width": 32,
          "height": 32
        },
        {
          "url": "https://preview.redd.it/award_images/t5_22cerq/fukjtec638u41_TreeHug.png?width=48&amp;height=48&amp;auto=webp&amp;s=a7b1d9f0629a00bc081d6db45a01c14720841969",
          "width": 48,
          "height": 48
        },
        {
          "url": "https://preview.redd.it/award_images/t5_22cerq/fukjtec638u41_TreeHug.png?width=64&amp;height=64&amp;auto=webp&amp;s=ee0ceaa18ec2902fcb59a89bb93dfb440ce7bcf5",
          "width": 64,
          "height": 64
        },
        {
          "url": "https://preview.redd.it/award_images/t5_22cerq/fukjtec638u41_TreeHug.png?width=128&amp;height=128&amp;auto=webp&amp;s=f3c3ed580426898ffd2df864e1111c957f71adf3",
          "width": 128,
          "height": 128
        }
      ],
      "icon_width": 2048,
      "static_icon_width": 2048,
      "start_date": null,
      "is_enabled": true,
      "awardings_required_to_grant_benefits": null,
      "description": "Show nature some love.",
      "end_date": null,
      "subreddit_coin_reward": 0,
      "count": 1,
      "static_icon_height": 2048,
      "name": "Tree Hug",
      "resized_static_icons": [
        {
          "url": "https://preview.redd.it/award_images/t5_22cerq/fukjtec638u41_TreeHug.png?width=16&amp;height=16&amp;auto=webp&amp;s=bbe4efb7b7ea2ecacd9609c937941282019a511f",
          "width": 16,
          "height": 16
        },
        {
          "url": "https://preview.redd.it/award_images/t5_22cerq/fukjtec638u41_TreeHug.png?width=32&amp;height=32&amp;auto=webp&amp;s=7aa65fa1bbd9dd3482e18cae220a6acbbabd6452",
          "width": 32,
          "height": 32
        },
        {
          "url": "https://preview.redd.it/award_images/t5_22cerq/fukjtec638u41_TreeHug.png?width=48&amp;height=48&amp;auto=webp&amp;s=a7b1d9f0629a00bc081d6db45a01c14720841969",
          "width": 48,
          "height": 48
        },
        {
          "url": "https://preview.redd.it/award_images/t5_22cerq/fukjtec638u41_TreeHug.png?width=64&amp;height=64&amp;auto=webp&amp;s=ee0ceaa18ec2902fcb59a89bb93dfb440ce7bcf5",
          "width": 64,
          "height": 64
        },
        {
          "url": "https://preview.redd.it/award_images/t5_22cerq/fukjtec638u41_TreeHug.png?width=128&amp;height=128&amp;auto=webp&amp;s=f3c3ed580426898ffd2df864e1111c957f71adf3",
          "width": 128,
          "height": 128
        }
      ],
      "icon_format": "PNG",
      "icon_height": 2048,
      "penny_price": 0,
      "award_type": "global",
      "static_icon_url": "https://i.redd.it/award_images/t5_22cerq/fukjtec638u41_TreeHug.png"
    }
  ],
  "awarders": [],
  "media_only": false,
  "can_gild": true,
  "spoiler": false,
  "locked": false,
  "author_flair_text": null,
  "treatment_tags": [],
  "visited": false,
  "removed_by": null,
  "num_reports": null,
  "distinguished": null,
  "subreddit_id": "t5_2qqjc",
  "mod_reason_by": null,
  "removal_reason": null,
  "link_flair_background_color": "",
  "id": "jowv2r",
  "is_robot_indexable": true,
  "report_reasons": null,
  "author": "itsmelen",
  "discussion_type": null,
  "num_comments": 415,
  "send_replies": true,
  "whitelist_status": "all_ads",
  "contest_mode": false,
  "mod_reports": [],
  "author_patreon_flair": false,
  "author_flair_text_color": null,
  "permalink": "/r/todayilearned/comments/jowv2r/til_that_elephants_are_tremendous_distance/",
  "parent_whitelist_status": "all_ads",
  "stickied": false,
  "url": "https://www.wildanimalpark.org/can-elephants-swim/",
  "subreddit_subscribers": 24127304,
  "created_utc": 1604630765,
  "num_crossposts": 3,
  "media": null,
  "is_video": false
}

You can use the outputs like this:

on:
  reddit:
    url: https://www.reddit.com/r/news/
jobs:
  print:
    name: Print
    runs-on: ubuntu-latest
    steps:
      - name: Print Outputs
        env:
          title: ${{on.reddit.outputs.title}}
          link: ${{on.reddit.outputs.permalink}}
        run: |
          echo title: $title
          echo link: $link