{"id":13455788,"url":"https://github.com/actionsflow/actionsflow","last_synced_at":"2025-05-14T06:13:00.949Z","repository":{"id":37536905,"uuid":"299706940","full_name":"actionsflow/actionsflow","owner":"actionsflow","description":"The free Zapier/IFTTT alternative for developers to automate your workflows based on Github actions","archived":false,"fork":false,"pushed_at":"2023-12-30T04:06:56.000Z","size":3925,"stargazers_count":3263,"open_issues_count":12,"forks_count":137,"subscribers_count":36,"default_branch":"main","last_synced_at":"2025-05-06T15:59:11.175Z","etag":null,"topics":["actions","actionsflow","automate","hacktoberfest","ifttt","workflow","zapier"],"latest_commit_sha":null,"homepage":"https://actionsflow.github.io/docs","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/actionsflow.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null},"funding":{"github":null,"patreon":"theowenyoung"}},"created_at":"2020-09-29T18:39:47.000Z","updated_at":"2025-05-03T12:54:22.000Z","dependencies_parsed_at":"2023-12-30T05:19:36.266Z","dependency_job_id":"4134963a-8e02-4a6f-92fa-03eae8e98951","html_url":"https://github.com/actionsflow/actionsflow","commit_stats":{"total_commits":353,"total_committers":8,"mean_commits":44.125,"dds":"0.11048158640226624","last_synced_commit":"06edc408e8c2d1b0f8de296c2fda759b7027c4e3"},"previous_names":[],"tags_count":814,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/actionsflow%2Factionsflow","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/actionsflow%2Factionsflow/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/actionsflow%2Factionsflow/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/actionsflow%2Factionsflow/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/actionsflow","download_url":"https://codeload.github.com/actionsflow/actionsflow/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254080859,"owners_count":22011514,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["actions","actionsflow","automate","hacktoberfest","ifttt","workflow","zapier"],"created_at":"2024-07-31T08:01:11.090Z","updated_at":"2025-05-14T06:13:00.899Z","avatar_url":"https://github.com/actionsflow.png","language":"TypeScript","readme":"\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://actionsflow.github.io\" rel=\"noopener\"\u003e\n \u003cimg width=200px height=200px src=\"https://raw.githubusercontent.com/actionsflow/actionsflow/main/docs/assets/logo.svg\" alt=\"Project logo\"\u003e\u003c/a\u003e\n\u003c/p\u003e\n\n\u003ch1 align=\"center\"\u003eActionsflow\u003c/h1\u003e\n\n\u003cdiv align=\"center\"\u003e\n\n[![Actionsflow](https://img.shields.io/static/v1?label=\u0026message=actionsflow\u0026color=brightgreen\u0026labelColor=white\u0026style=flat\u0026logo=data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjA0OCIgaGVpZ2h0PSIyMDQ4IiB2aWV3Qm94PSIwIDAgMjA0OCAyMDQ4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxlbGxpcHNlIGN4PSI1NjAuNzUxIiBjeT0iOTE0LjYzIiByeD0iMTUxLjUzNCIgcnk9IjI1Mi41OTkiIGZpbGw9IiNmZmYiLz48ZWxsaXBzZSBjeD0iOTE1LjQxNSIgY3k9IjkxNy4yODkiIHJ4PSIxNTEuNTM0IiByeT0iMjUyLjU5OSIgZmlsbD0iI2ZmZiIvPjxwYXRoIGQ9Ik0tNzM1LjAxNSAxOC4yNDJjMCA0MDYuNjA0IDMyOC40MTEgNzM1LjAxNSA3MzUuMDE1IDczNS4wMTUgNDAzLjQ3NyAwIDczMS44ODgtMzI4LjQxMSA3MzUuMDE2LTczMS44ODgtMy4xMjggMTAwLjA4OC04NC40NDkgMTc4LjI4MS0xODQuNTM2IDE3OC4yODFTMzY1Ljk0NCAxMTguMzI5IDM2NS45NDQgMTUuMTE0di0yMTcuODkxYzAtMzAzLjM5LTI0Ny4wOS01NTAuNDgtNTUwLjQ4LTU1MC40OC0zMDMuMzg5IDAtNTUwLjQ3OSAyNDcuMDktNTUwLjQ3OSA1NTAuNDhWMTguMjQyem0yNzQuOTgtMzIxLjI0M2M2NC40NzcgMCAxMTcuNDExIDUyLjUzNiAxMTcuMDEzIDExNy4wMTN2MTYzLjk3N0MtMzQzLjAyMiA0Mi40NjUtMzk1Ljk1NiA5NS00NjAuMDM1IDk1Yy02NC4wNzggMC0xMTcuMDEzLTUyLjEzOC0xMTcuMDEzLTExNy4wMTJ2LTE2My45NzdjMC02NC40NzcgNTIuNTM3LTExNy4wMTMgMTE3LjAxMy0xMTcuMDEzem0zNDMuMDIgMGM2NC40NzYgMCAxMTcuNDEgNTIuNTM2IDExNy4wMTMgMTE3LjAxM3YxNjMuOTc3Qy0uMDAyIDQyLjQ2NS01Mi45MzcgOTUtMTE3LjAxNSA5NVMtMjM0LjAyOCA0Mi44NjMtMjM0LjAyOC0yMi4wMXYtMTYzLjk3N2MwLTY0LjQ3NyA1Mi41MzctMTE3LjAxMyAxMTcuMDEzLTExNy4wMTN6IiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgxMDI0IDEwMjQpIiBpZD0iZG9jdW1lbnQiLz48ZWxsaXBzZSBjeD0iOTUwLjE2OSIgY3k9IjgzOC4xOTciIHJ4PSIuNjYxIiByeT0iNS40NjUiIGZpbGw9IiNkOGQ4ZDgiLz48L3N2Zz4=)](https://github.com/actionsflow/actionsflow)\n[![npm version](https://img.shields.io/npm/v/actionsflow.svg)](https://npmjs.org/package/actionsflow)\n[![npm](https://img.shields.io/npm/dw/actionsflow)](https://npmjs.org/package/actionsflow)\n[![Docker Pulls](https://img.shields.io/docker/pulls/actionsflow/actionsflow)](https://hub.docker.com/r/actionsflow/actionsflow)\n[![Build](https://github.com/actionsflow/actionsflow/workflows/Test/badge.svg)](https://github.com/actionsflow/actionsflow/actions?query=workflow%3ATest)\n[![codecov](https://codecov.io/gh/actionsflow/actionsflow/branch/main/graph/badge.svg?token=XsDPqlOTew)](https://codecov.io/gh/actionsflow/actionsflow)\n[![GitHub Issues](https://img.shields.io/github/issues/actionsflow/actionsflow.svg)](https://github.com/actionsflow/actionsflow/issues)\n[![GitHub Pull Requests](https://img.shields.io/github/issues-pr/actionsflow/actionsflow.svg)](https://github.com/actionsflow/actionsflow/pulls)\n[![GitHub stars](https://img.shields.io/github/stars/actionsflow/actionsflow)](https://github.com/actionsflow/actionsflow/stargazers)\n[![License](https://img.shields.io/badge/license-MIT-blue.svg)](/LICENSE)\n\u003cbr\u003e\n\n\u003c/div\u003e\n\n---\n\n\u003cp align=\"center\"\u003e\n\u003cstrong\u003eThe free \u003ca href=\"https://ifttt.com/\"\u003eIFTTT\u003c/a\u003e/\u003ca href=\"https://zapier.com/\"\u003eZapier\u003c/a\u003e alternative for developers to automate their workflows based on GitHub actions, option to run self-hosted without GitHub as well\u003c/strong\u003e\n\u003cbr\u003e\n\u003cbr\u003e\n\u003c/p\u003e\n\n\u003c!-- \u003cdiv align=\"center\"\u003e\n  \u003ch2\u003eSponsorships\u003c/h2\u003e\n  \u003cbr\u003e\n  \u003ca href=\"https://meercode.io/?utm_campaign=github_repo\u0026utm_medium=referral\u0026utm_content=actionsflow\u0026utm_source=github\"\u003e\n    \u003cdiv\u003e\n      \u003cimg src=\"https://raw.githubusercontent.com/actionsflow/actionsflow/main/docs/assets/meercode-logo.png\" width=\"192\" alt=\"Meercode\"\u003e\n      \u003c/div\u003e\n      \u003cb\u003eMeercode is the ultimate monitoring dashboard for your GitHub Actions.\u003c/b\u003e\n      \u003cdiv\u003e\n        \u003csup\u003eIt's impossible to improve what you can't measure! Get Real Insights and Metrics From Your CI usage\u003c/sup\u003e\n      \u003c/div\u003e\n  \u003c/a\u003e\n\u003c/div\u003e --\u003e\n\n---\n\n## 📝 Table of Contents\n\n- [About](#-about)\n- [Features](#-features)\n- [Documentation](#-documentation)\n- [How Actionsflow Works](#-how-actionsflow-works)\n- [Getting Started](#-getting-started)\n- [Contributing](#-how-to-contribute)\n- [Authors](#-authors)\n\n## 😁 About\n\n[Actionsflow](https://github.com/actionsflow/actionsflow) helps you automate workflows - it's a free [IFTTT](https://ifttt.com/)/[Zapier](https://zapier.com/) alternative for developers. With [Actionsflow](https://github.com/actionsflow/actionsflow) you can connect your favorite apps, data, and APIs, receive notifications of actions as they occur, sync files, collect data, and more. We implemented it based on [Github actions](https://docs.github.com/en/actions), and you use a YAML file to build your workflows. The configuration format is the same as [Github actions](https://docs.github.com/en/actions/configuring-and-managing-workflows/configuring-a-workflow), which makes it easy for you to get going if you've explored Github actions before. You can also use any [Github actions](https://github.com/marketplace?type=actions) as your job's steps.\n\nYou can learn more about the core concepts of Actionsflow [here](#-how-actionsflow-works).\n\n\u003e If you want a lighter, simpler workflow that doesn't rely on Github Actions, consider [Denoflow](https://github.com/denoflow/denoflow), another workflow tool made by me, based on Deno with YAML , you can try it at an [online playground](https://playground.owenyoung.com/)\n\n## 🔥 Features\n\n- **Totally Free!** Actionsflow is based on [Github actions](https://docs.github.com/en/actions). To run an Actionsflow workflow, all you need to do is [create a repository from the Actionsflow template repository](https://github.com/actionsflow/actionsflow-workflow-default/generate), or, you can also [deploy a self-hosted version](https://actionsflow.github.io/docs/self-hosted).\n- **Leverage Community Triggers**. You can use [community-provided triggers](https://actionsflow.github.io/docs/triggers/#triggers-list) like Slack, RSS, Webhook, Typeform, Email, Reddit, NPM, Telegram, Twitter, etc. You can also easily [create your own triggers](https://actionsflow.github.io/docs/creating-triggers/).\n- **Support Almost ALL Actions of [Github Actions](https://github.com/marketplace?type=actions)**. Actionsflow uses [act](https://github.com/nektos/act) (a tool for running GitHub Actions locally) to run the jobs on your workflow file. With [these awesome Github actions](https://actionsflow.github.io/docs/actions/), you can connect with IFTTT, Zapier, or other services like Slack, Telegram, Facebook, Twitter, Line, etc.\n- **Support Self-Hosted** You can run Actionsflow based on both GitHub Repository or [a self-hosted version](https://actionsflow.github.io/docs/self-hosted).\n- **Simple Workflow Configuration**. The Actionsflow configuration format is the same as [Github actions](https://docs.github.com/en/actions/configuring-and-managing-workflows/configuring-a-workflow). If you've written a [Github actions file](https://docs.github.com/en/actions/configuring-and-managing-workflows/configuring-a-workflow) before, you'll find defining an Actionsflow workflow file really easy.\n- **Run triggers every 5 minutes**. The workflow can check and run every 5 minutes based on [Github actions scheduled events](https://docs.github.com/en/actions/reference/events-that-trigger-workflows#scheduled-events).\n- **Support complex workflows**. With Actionsflow you can make complex advanced workflows. Actionsflow provides a [MongoDB query language](https://actionsflow.github.io/docs/workflow/#ontriggerconfigfilter) for you to filter your data as you want.\n\n## 🎓 Documentation\n\nFull documentation for Actionsflow lives [on the website](https://actionsflow.github.io/docs/).\n\nYou can also [view it on Github](https://github.com/actionsflow/actionsflow/blob/main/docs/index.md) if you prefer.\n\n## 👀 How Actionsflow works\n\nActionsflow uses [Github Actions](https://docs.github.com/en/actions)' [**`repository_dispatch` event**](https://docs.github.com/en/actions/reference/events-that-trigger-workflows#repository_dispatch) and [**`scheduled` event**](https://docs.github.com/en/actions/reference/events-that-trigger-workflows#scheduled-events) every 5 minutes to run [Actionsflow triggers](https://actionsflow.github.io/docs/triggers/). Those triggers generate result **items**, which are cached and deduplicated, generating a standard Github actions workflow file with the trigger result. Finally, the workflows are executed using [act](https://github.com/nektos/act) (a tool for running GitHub Actions locally).\n\nTo learn more about how Actionsflow works, please see [Core Concepts of Actionsflow](https://actionsflow.github.io/docs/concepts/).\n\n## 🏁 Getting Started\n\n\u003e For self-hosted version please see [here](https://actionsflow.github.io/docs/self-hosted)\n\n1. **Create a public Github repository by using [this link](https://github.com/actionsflow/actionsflow-workflow-default/generate).**\n\n   A typical Actionsflow repository structure looks like this:\n\n   ```sh\n   ├── .github\n   │   └── workflows\n   │       └── actionsflow.yml\n   ├── .gitignore\n   ├── README.md\n   └── workflows\n   │   └── rss.yml\n   │   └── webhook.yml\n   └── package.json\n   ```\n\n1. **Uncomment `.github/workflows/actionsflow.yml` schedule event**\n\n   ```yml\n   on:\n     schedule:\n       - cron: \"*/15 * * * *\"\n   ```\n\n   \u003e Note: To prevent abuse, by default, the schedule is commented, please modify the schedule time according to your own needs, the default is once every 15 minutes. Learn more about schedule event, please see [here](https://docs.github.com/en/actions/reference/events-that-trigger-workflows#schedule)\n\n1. **Create your [workflow files](https://actionsflow.github.io/docs/workflow/) inside the `workflows` directory**\n\n   A typical workflow file `rss.yml` looks like this:\n\n   ```yaml\n   on:\n     rss:\n       url: https://hnrss.org/newest?points=300\u0026count=3\n   jobs:\n     request:\n       name: Make a HTTP Request\n       runs-on: ubuntu-latest\n       steps:\n         - name: Make a HTTP Request\n           uses: actionsflow/axios@v1\n           with:\n             url: https://hookb.in/VGPzxoWbdjtE22bwznzE\n             method: POST\n             body: |\n               {\n                 \"link\":\"${{ on.rss.outputs.link }}\", \n                 \"title\": \"${{ on.rss.outputs.title }}\",\n                 \"content\":\"\u003c\u003c\u003c${{ on.rss.outputs.contentSnippet }}\u003e\u003e\u003e\"\n               }\n   ```\n\n   For more information about the Actionsflow workflow file, see the\n   [Actionsflow workflow reference](https://actionsflow.github.io/docs/workflow/).\n\n   You can find examples and inspiration on the [Trigger List](https://actionsflow.github.io/docs/triggers/) and on [Awesome Actionsflow Workflows](https://github.com/actionsflow/awesome-actionsflow).\n\n1. **Commit and push your updates to Github**\n\nPushing to Github makes Actionsflow run the workflows you defined. You can view logs at your repository's actions tab on [Github](https://github.com).\n\nFor more information about getting up and running, see [Getting Started](https://actionsflow.github.io/docs/getting-started/).\n\n# 🎓 Learn More\n\nFull documentation for Actionsflow lives [on the website](https://actionsflow.github.io/docs/).\n\n- [Workflow Syntax for Actionsflow](https://actionsflow.github.io/docs/workflow/) - Learn more about the Actionsflow workflow file syntax\n- [Trigger List](https://actionsflow.github.io/docs/triggers/) - Explore Actionsflow triggers\n- [Awesome Actionsflow Workflows](https://github.com/actionsflow/awesome-actionsflow) - Explore and get inspired by other Actionsflow workflow use-cases\n- [Core Concepts](https://actionsflow.github.io/docs/concepts/) - Learn more about how Actionsflow works\n- [Creating Triggers for Actionsflow](https://actionsflow.github.io/docs/creating-triggers/) - Learn more about how to create your own trigger for Actionsflow\n- [FAQs](https://actionsflow.github.io/docs/faqs/) - Actionsflow FAQs\n- [Join Actionsflow on Slack](https://forms.gle/9VvTVne6oU7zBCeVA) - Chat with other users and contributors on Slack, if you have already joined, please [signin](https://actionsflow.slack.com) directly\n- [Join Actionsflow on Telegram](https://t.me/joinchat/fMXYRGHMnK01MjUx) - Chat with other users and contributors on Telegram\n\n## 👏 How to Contribute\n\nWhether you're helping us fix bugs, improve the docs, or spread the word, we'd love to have you as part of the Actionsflow community! 💪💜\n\nCheck out our [Contributing Guide](https://actionsflow.github.io/docs/contributing/) for ideas on contributing and setup steps for getting our repositories up and running on your local machine.\n\n## ✋ Authors\n\n- [@theowenyoung](https://github.com/theowenyoung) - Idea \u0026 Initial work\n\nSee also the list of [contributors](https://github.com/actionsflow/actionsflow/contributors) who participated in this project.\n\n## 📝 License\n\nLicensed under the [MIT License](https://github.com/actionsflow/actionsflow/blob/main/LICENSE).\n","funding_links":["https://patreon.com/theowenyoung"],"categories":["TypeScript","Workflow Automation","语言资源库","Software","Apps"],"sub_categories":["Packages","typescript","Automation"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Factionsflow%2Factionsflow","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Factionsflow%2Factionsflow","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Factionsflow%2Factionsflow/lists"}