[HN Gopher] Show HN: We built a developer-first open-source Zapi... ___________________________________________________________________ Show HN: We built a developer-first open-source Zapier alternative For the past few months we've been building Trigger.dev and can now share our beta with you: https://github.com/triggerdotdev/trigger.dev. Trigger.dev is an open source platform that makes it easy for developers to create event-driven background tasks directly in their code. You write workflows using our SDK, and can view all the runs in our web app. Why we built this: - We found current workflow / automation tools like Zapier and n8n are good for simple tasks, but not for more advanced use cases. - Dropping down into code in these tools is just not a great experience. We prefer using our own IDEs, version control, and having access to GitHub Copilot etc. - Sometimes, a workflow requires us to query a database or handle some sensitive information. It would be great if this data wasn't sent to a third party. Our beta version lets you: - Trigger workflows from webhooks, custom events or schedules (CRON) - Use API integrations with Slack, GitHub, Shopify and Resend. We're adding more of these each week. - Add delays of up to 1 year. Workflows will resume where they left off, even if your server has gone down. - Support for Fetch and subscribing to generic webhooks. - Observe every workflow run in the app (great for debugging). - Open source MIT license so anyone can self-host the platform. We're still early so would love your feedback and opinions. Feel free to try us out for free - and if you want a specific API integrated, just let us know. Main website: https://trigger.dev Github: https://github.com/triggerdotdev/trigger.dev Author : eallam Score : 428 points Date : 2023-02-01 14:15 UTC (8 hours ago) (HTM) web link (trigger.dev) (TXT) w3m dump (trigger.dev) | cube2222 wrote: | Looking at the long delays, do I understand correctly that this | is something similar to Temporal[0] or AWS Step Functions? | | My first sentiment was "when I'm already writing code, why not | just use Lambda", but it looks like these delays are kind of the | selling feature, and it looks like the UX is better than step | functions. | | I'd be curious about your selling points over Temporal, as I | can't seem to find any comparison. | | Good luck! | | [0]: https://temporal.io | eallam wrote: | Yup I've done the AWS Step Functions thing in the past, and it | usually was about 90% wrangling with AWS and 10% writing | code... we wanted to flip that ratio around (that's the goal at | least!) | | As for temporal, we are pretty similar to them, although I | think we have more of a focus on making it easy to trigger | (sorry) the workflows from third party events (webhooks, etc.) | and then making reliable requests once you are in a workflow. | | Thanks for the feedback though, we'll try and add service | comparison docs soon! | ElFitz wrote: | > Yup I've done the AWS Step Functions thing in the past, and | it usually was about 90% wrangling with AWS and 10% writing | code... we wanted to flip that ratio around (that's the goal | at least!) | | That was the final straw what led a friend and me to try to | do what you've done. | | We had started off using Zapier, and it's horrendous objects | & arrays handling, then moved on to Step Functions, then gave | up on what we were initially doing to try and build a | workable alternative. | | With a cumulated grand total of 6 months of experience, we | had no idea what we were getting into. | | Anyway, the point is: thanks for making this. | rangledangle wrote: | Now that AWS App Composer is a thing is this still an issue | though? I felt that pain in the beginning, but once you get | the hang of Step Functions it doesn't seem so bad. I never | found a good alternative. My company is using Workato and | it's a nightmare. | mattaitken wrote: | Thanks! That's been our experience exactly and is the | reason we're building it. The experience of AWS step | functions on one extreme and Zapier on the other. | debarshri wrote: | For people who are building durable workflows. You should | definitely checkout temporal [1]. It is production ready, you can | implement pretty much same using the original SDK of the | underline services. | | [1] https://temporal.io/ | revskill wrote: | This is complicated with too many terminologies :( | verdverm wrote: | Their pricing model is much preferred: | https://temporal.io/cloud | | i.e. pay for what resources you use instead of how many users | you have. This is how we pay for AWS/GCP/Azure. I think a lot | of dev SaaS could / should go this way. | johtso wrote: | Unfortunately there's currently a steep mandatory support | charge of $200 a month, which makes it unviable for smaller | operations. I think they're planning to offer the service | without the support aspect, which would be fantastic and I'd | be first in line for.. | vpol wrote: | And if you don't store much inside the workflows themselves - | it's quite cheap even if you have hundreds of thousands | invocations. | verdverm wrote: | 1M invocations looks like $25, which is really cheap | vpol wrote: | Not sure why everyone says it's too complex, maybe people get | scared by the word idempotence. | eallam wrote: | I forgot to mention in the original post we've built a bunch of | example workflows here: | https://github.com/triggerdotdev/trigger.dev-examples | e28eta wrote: | Is there a brief description of what each example is? After | following that link, I was just looking for one or two | sentences, without having to look through each script. | d-k-p wrote: | We have a few examples with descriptions in the docs here: | https://docs.trigger.dev/examples/examples | | The example repo eallam shared has more though, we will be | moving all of them to the docs soon! | sigstoat wrote: | i think an open source zapier alternative would be a desktop app | that had a nice UI, and synthesized terraform/FaaS code/API | gateway-equivalent stuff behind the scenes and then ran it | against my preferred cloud provider account. | | not this, as convenient for some as it may be. | farukaydin wrote: | There is an open source Zapier alternative | (https://automatisch.io) even though it's not a desktop app. | | Disclaimer: I'm a co-founder of Automatisch | rubenfiszel wrote: | We do not provide a desktop app, but we provide the FaaS and | instructions to self-host wherever: | https://github.com/windmill-labs/windmill | mmcclure wrote: | Just reiterating what a lot of other folks have said in this | thread already, but this scratches a pretty real itch for some | stuff we (and our customers) have been thinking about at Mux. | Zapier (and similar) is just a little too high level for a lot of | our needs, but Temporal feels like overkill. Extremely excited to | play around, congrats on the launch! | d-k-p wrote: | Thank you, really appreciate that comment. That's the bracket | we see ourselves in, and for the same reasons (as product | builders). | tonyhb wrote: | Looks like you signed up to us last year at | https://www.inngest.com and took... a lot of inspiration! | | Good luck with the release - nice to see you adding features like | keys, sleeps, etc. | mattaitken wrote: | Hey, Inngest looks impressive, congrats! We're tackling similar | problems. Our actual inspiration to build this was Interval | back in November. They make it easy to create internal | dashboards inside your own codebase by using their SDK. We | wanted to offer the same great developer experience but for | creating workflows. | yewenjie wrote: | How does this compare to Pipedream and Windmill, both of which | are also open-source? | rubenfiszel wrote: | Founder of Windmill here, and d-k-p answer is spot-on. If you | want to manage your entire workflows as a typescript code, then | trigger.dev would be preferable. Windmill supports typescript, | python, go and bash, and handle all the advanced features such | as retries, approval steps, pre-made integrations to hundreds | of API at the workflow level in a UI-based editor. Then for the | steps, themselves. you would use either your IDE and sync to | Windmill, or use our web IDE. | d-k-p wrote: | In Trigger.dev workflows are created completely in your code | rather than in a node-based UI (which to be fair does allow you | to write code sometimes). We found developers could actually | put together workflows faster if the whole thing was code | rather than a hybrid of UI / code (because you get to use your | own IDE + Copilot). | cssanchez wrote: | This sounds great and very much needed! If you need a | contributor, I'm interested (currently looking for a good project | to get into). | eallam wrote: | Contributions welcome! Hop in our Discord and we can chat: | https://discord.gg/nkqV9xBYWy | bambam24 wrote: | [dead] | kats wrote: | Hey just giving you guys feedback. The emojis are really an | issue. NocoDB has this issue as well. If I want to use this at | work it's a lot harder sell because of the emojis and statements | like "it's blazing fast!!" | | If you want it to be more adopted, at least for my job, it has to | look super straight and serious, and give the impression that | it's secure (which doesn't necessarily mean writing "we're | secure!") Like copying the style of Microsoft Office would be the | best. Google Docs or Zoho would be ok too. Of course it's great | that you got through YCombinator and pitched, etc. But giving the | impression of "Woo! We're a startup!" makes it seem like the | company may be gone soon. | | To sell to a more generic established business, it might be | better to look like a company that has been around and isn't | going anywhere. Like for Microsoft Office, the assumption is that | it's secure and your data never leaves your PC. They don't have | to say that. | runnr_az wrote: | Missed an opportunity to call it Zapiest | robertlagrant wrote: | NotIfThisThenThatButUs | ethbr0 wrote: | TryThisCatchThat | wizzwizz4 wrote: | That would probably get them in trademark troubles. | eallam wrote: | Where were you 2 months ago! | vladsanchez wrote: | LOL Good one indeed! | neogodless wrote: | Keeping their Zapier wit to themself. | CSMastermind wrote: | I've spoken to many IT professionals over the years that have | been frustrated with BetterCloud. | | I've just been waiting for someone to launch BestCloud as a | competitor. | qup wrote: | Maybe BestCloud was the OG, usurped by BetterCloud. | moltar wrote: | I've been waiting for this for years. Love! | cpursley wrote: | Neat! This seems like it work be great paired with a low/no-code | backend like Hasura or Supabase. | paul1664 wrote: | Is this any way related to the Nango & Pizzly projects? I see | they're mentioned in the docker-compose file. | | https://www.nango.dev/ for reference. | | [Edit: Added link to Nango website] | mattaitken wrote: | We are using Nango (formerly called Pizzly) for our OAuth | integrations. It's a fantastic way of making it easier to do | OAuth! | [deleted] | jonny_eh wrote: | Are you hosting or am I? The marketing implies that I'm hosting | but your FAQ, at the bottom, says you are. Can you please clear | up? | eallam wrote: | Currently we are hosting, but we are going to be documenting | how to self host in the near future so you can host it | yourself. | jonny_eh wrote: | In the meantime, maybe remove "Your workflows run on your | servers, not ours. We only receive the data you choose to | send to us." from your front page marketing? | mattaitken wrote: | The website is correct, it's just a bit confusing so I'll | explain more here: | | The workflow code is in your codebase and runs on your | servers, we don't host that. | | We host the service that triggers your code (using events | like scheduled, webhooks, customEvents) and that you can | call using our SDK to do requests, logging and delays | inside the workflow (e.g. using our Slack integration or | using our fetch that auto-retries with exponential back- | off). We also host the web app that you use to authenticate | with APIs, show all of your runs with associated data and | any errors. | | Soon we will add a self-hosted guide so that you can also | choose to host the Trigger.dev service yourself too. It's a | bit hard to explain, hopefully this clears things up! | nirga wrote: | At first I thought that a code alternative for a no-code solution | like zapier was counterintuitive. But as an engineer using Zapier | (for the first time) these past few months I got so frustrated by | the lack of an option to just write some "if" or just 2 lines of | code to make things work the way I want them. | | I think trigger.dev nails it. This is exactly what I needed. | rubenfiszel wrote: | Trigger.dev looks like amazing if you want a simplified | temporal that is still 100% code based and exclusively in | Typescript. If you are looking for a Zapier-for-developer | experience, we took an alternative route at Windmill of | allowing Python/Javascript/Go/Bash as steps but the workflows | are still GUI based: https://github.com/windmill- | labs/windmill/blob/main/imgs/win... | | Despite them being GUI based, you can do everything that | temporal enable, approval steps/suspending workflows until | being reactivated by a webhook, branching, etc, etc... It's | 100% open-source and self-hostable. | mike31fr wrote: | You should try make.com. It is great! | eightysixfour wrote: | n8n is also great about this. It retains the visual "easy mode" | environment but lets you drop in a JavaScript node whenever you | need to do something more complex | Jiger104 wrote: | Zapier has a python / JS code step (basically a AWS lambda) you | can use to do something like this. Downside is that it has a | timeout of 10s | nirga wrote: | Huh cool thanks I didn't know that! I guess it's just another | action and not something "native" to Zapier (so if you want | to later connect it to some off-the-shelf action you can't). | robbiemitchell wrote: | You can connect code steps to other actions. For example, | every Python code step has a reserved `output` variable | which allows you to pass a list out to the next steps. It | gets passed as stringified JSON: if it contains dicts, | those values are made available automatically as inputs to | other steps. You can also pass more complex, nested JSON | and just json.loads it later. | justin_oaks wrote: | I have the same thoughts. I tried node-red and I got frustrated | having to do all this drag and drop stuff for something I could | code easily. | rsstack wrote: | Would love this self-hosted. | | The license says "All content that resides under any "ee/" | directory of this repository, if such directories exists, are | licensed under the license defined in "ee/LICENSE".", but there's | no folder named ee? What is this referring to? | eallam wrote: | We haven't done any ee features yet, which is why we stuck that | "if such directories exists" line in there. We're following the | playbook from some other OSS companies such as PostHog and | Cal.com. Features that will go in ee (off the top of my head) | are the teams and billing features of our hosted option. | | We'll be working on self-hosting instructions soon as well :) | danielvaughn wrote: | A little while back, I was working with a startup that built | an AI note taking app. They offered several integrations for | their customers, and at the time I wished that there was a | Zapier alternative that allowed for a multi-tenant approach | (i.e. build a pipeline that each customer could independently | hook into with their own external accounts). | | I haven't had a chance to go through your site yet, but that | would be a killer feature to have. | eallam wrote: | Indeed we've had a few people who've requested this type of | thing (they want to make requests authenticated as their | customers, not as theirselves). Currently we only support | making requests as yourself (e.g. post into your own slack | channel), but our architecture will support making requests | as your customers, and something we are very interested in | doing eventually | mfrye0 wrote: | This looks great. I'll have to play around with it. | | Related, we built a developer oriented Zapier clone for event | scale automations awhile back for our internal product. We've | since pivoted and have been debating on potentially open sourcing | the engine as well. | | We built ours using Rust with a DSL for all the triggers, | actions, and action inputs/outputs. The actions themselves are | defined as APIs, which makes it easy to add functionality in any | language. Most of our actions have been built in Typescript. | | Is there interest from anyone in potentially using it? | ZephyrBlu wrote: | Would love it if there was an email list I can subscribe to so I | can keep up to date with development. I don't have a use for | Trigger right now, but it seems like a cool tool that I want to | keep up with. | patchorang wrote: | Why are there so many "Zapier alternatives"? | dreadlordbone wrote: | Zapier's UI is a hot mess. If you breathe on a zap it turns | off. Default names for zaps are "Untitled Zap". Pricing is very | high for any sort of serious traffic. The webapp runs very | slow. | | But most important, no one knows how to say "Zapier". Is it | ZAHpier or ZAYpier? | sgarland wrote: | Rhymes with happier. | justin_oaks wrote: | Then it should have been spelled Zappier. | debarshri wrote: | Zapier's UI might be a hot mess but their revenues indicate | that the people are will to go with it and use it as is. | | All the points you mention, can be fixed by zapier. Then the | alternatives do have a moat. | debarshri wrote: | Because Zapier is an established business and showcases that | there is market for automation tools. It is a safe bet to make | by creating an alternative. | | What people are missing is the fact that executing a GTM the | way zapier did is more that just building the product and is | actually very hard. | Moto7451 wrote: | My experience is that for some types of integrations you see | about a 70% success rate. Eventually you need something that is | more reliable. Maybe you need an all in one solution that has | some ETL capabilities. Maybe it's a cost thing. | | Zapier seems to be the best way to get stuff done quickly and | cheaply but not the best for long term high volume use as an | integration platform. At my old job we migrated a from Zapier | to Integrator.io, which fixed the reliability issues but broke | the low barrier to entry. | Benjamin_Dobell wrote: | This looks interesting. | | Recently I needed some really infrequently executed background | workers. Basically just generate a CSV from our DB, email it | somewhere. Historically I'd setup a Redis backed worker queue for | background jobs. However, right now the aforementioned job is my | only background processing requirement and it's massively | overkill since serverless is _supposed_ to take care of the infra | headache for me. What I found was a surprising amount of BS to | get serverless runners doing what you want - there 's execution | limits, trigger limits, terrible developer experiences (depending | on the platform) etc. If you're already invested in a serverless | ecosystem, this isn't a huge deal, but for the odd one-off task, | the current options are kind of terrible. Supabase edge workers | for example are way too limited for this use case. Cloudflare | Workers (with the queuing stuff in beta) are probably the best | option. _But_ your batteries included approach seems super | appealing for this kind of stuff. That said, I think you 're in | for a hard time marketing this. It requires devs to have "learnt | the hard way" before they understand your value proposition. | eallam wrote: | That's a good point regarding the marketing, although we're | hoping to save a few poor souls from ever know the painful bits | you so eloquently wrote about! | vhanda wrote: | This is fascinating. It checks a lot of my boxes. I was recently | looking at ActionsFlow [0] which is similar but runs on GitHub | Actions. | | My thoughts - | | 1. I don't see proper secret storage being handled. You typically | don't want your API keys in your code. What would you recommend | instead? | | 2. "OAuth" based secrets. Many integrations require giving access | to an App via OAuth, which involves a flow. I think that's being | handled internally from the video [1] and from this project [2], | but it's not clear. How is that handled? | | A common use case I'd automated once is that when a GitHub | project gets starred, the developers public information is | scrapped and they are then followed on Twitter, if their twitter | handle is found. With Trigger.dev, the twitter part isn't clear. | | 3. Error Handling - What about when some job fails to run? I | understand there is a delay mechanism. But what about injecting | custom error handling? Sending a message on slack, for example. | | 4. Dashboards - They look awesome. And I get the impression that | each "action" in the code is mapped to individual blocks in the | dashboard. I'd love to be able to see a proper graph of the flow. | | I love that I can see the json request / response for each. It'll | make debugging easier when some API changes or fails. | | 5. No Code solutions - In the long run, I can easily picture | writing the integration I want in plain text, and having Github | CoPilot or ChatGPT generate the code for me, and then I can | quickly modify it. | | 6. Incentive for integrations - As with most automation tools, | entering the market is challenging as you're lacking | integrations. The awesome thing about ActionsFlow [0] was that it | was re-using an existing community of GitHub Actions, and | therefore you don't start from scratch. Have you thought about | reusing workflows from n8n or other projects? | | 7. Integrating with existing Automations - I think a bit more | focus should be made on integrating with IFTTT / Zapier / n8n. I | see you provide webhooks, but I think some easy wrappers + | documentation would be better. This way, I can try out newer | workflows in Trigger, and easily just extend my existing system. | And then if Trigger.dev works for me, I can think about migrating | away from my existing automation solution. | | 8. Open Source Longevity - Trigger.dev is MIT licensed. Could you | please explain the rationale? How do you plan to combat someone | launching a competitor using your code? N8n is deliberately | "Soure Code Available" and not "Open source", which I thought was | a decent compromise. Will you be following a more Open Core model | similar to GitLab (which is also MIT licensed)? | | 9. De-coupling runners and the dashboard - I'd love to not have | the pain of maintaining the dashboard / event listeners, but | being able to control the running of the jobs. Similar to a CI or | Airflow. | | 10. Support for other languages - This is something that Dagger | CI [3] now allows. Letting you use whatever programming language. | With Github Actions, I can just package it as a container. Do you | plan to support anything else? | | After moving from using HCL to Typescript for my Terraform code, | the advantage is so great, that I can't seem myself going back to | using a custom language such as Dagger's CUE [4]. Trigger.dev | targeting Typescript is already a big win. However, I do have a | number of automations in Python. | | Overall, I'm super optimistic. Congratulations on the launch. | | [0] - https://actionsflow.github.io/ | | [1] - https://www.youtube.com/watch?v=aFlwD0frvnQ | | [2] - https://github.com/triggerdotdev/Pizzly | | [3] - https://dagger.io/ | | [4] - https://docs.dagger.io/1215/what-is-cue/ | rubenfiszel wrote: | We support both typescript and python at windmill [1]. But our | model is doing low-code for the workflows, and actual | scripts/code for the steps themselves so it's quite different | than trigger.dev. We handle OAuth, refresh tokens and secrets | being managed by the platform. It's quite different from | trigger.dev considering they are doing workflows entirely in | code which has some pro and cons. | | [1]: https://github.com/windmill-labs/windmill | mattaitken wrote: | Thanks for such an amazing reply, I'll do my best to answer | everything. I am also on the Trigger.dev team btw. | | 1. Your API key with us can either be passed into the Trigger | constructor or you can use our TRIGGER_API_KEY environment | variable. For the API integrations we provide, we handle API | keys for you and they're added inside the dashboard UI. For | everything else: as the workflows and files are just code on | your server you can use environment variables (or your | preferred alternative) to inject secure values. | | 2. When a workflow step that requires OAuth is hit, the | workflow pauses and prompts you to sign in. After you've signed | in the workflow continues where it left off. You only need to | connect each service once per organization. You can sign | optionally in multiple times to the same service and switch | connections where needed, e.g. multiple separate Slack | workspaces. | | GitHub star to Twitter follow is a great idea. You could | achieve that right now by using our GitHub integration and our | fetch call (which auto-retries with exponential back off and | logging in the dashboard). We'll add a Twitter integration soon | so this is really easy and publish it as an example :) | | 3. We have detailed error messages attached to the step that | failed but don't currently have a way to hook into this like | you describe. This is a great idea, I've added it to our task | list. | | 4. Exactly right, each "step" is a block in the UI with clear | inputs and outputs. We would really like to have a graph view. | That'll be especially useful when you put loops in the code, | and of course branching. | | 5. 100%, making this work well with AI code generation would be | great. | | 6. This is a great idea, we'll investigate. Rather than just | mapping 1:1 with an SDK we're trying to make the experience | better. For example, with the normal Slack API you can't post | to a channel name, you have to use an id. We make it so you can | use the name and we deal with the hassle for you. | | 7. We'll look into this too. Integrations for interoperability | could make this easier. | | 8. We're going to follow the GitLab/PostHog model. Like GitLab, | the repository as a whole is MIT licensed but we can add some | /ee folders in the future with enterprise features. We feel it | gives us the right balance of being open source and gives us | some protection from a competitor hijacking the project. | | 9. We will separate out the dashboard from the runners - this | was a compromise so we could ship the first version faster. | | 10. We can relatively easily ship other languages SDKs and | Python is probably where we'd start. Our core backend code will | most likely remain in TypeScript. | | Thanks again for so much feedback! | johtso wrote: | "4. Exactly right, each "step" is a block in the UI with | clear inputs and outputs. We would really like to have a | graph view. That'll be especially useful when you put loops | in the code, and of course branching." | | I can't help but think that you want a state machine here, | rather than imperative code that's being analysed to try and | get some kind of a graph out of it.. | | I'm personally looking forward to a cloud, state machine | based service that offers the whole long running workflow | thing. The closest I've seen so far was people using xstate | within temporal.io workflows.. but would be amazing to have | really nice observability out of the box, with all the | clarity that state machines bring. | r3trohack3r wrote: | If you're looking for competitors in your space, it's worth | checking out Autocode too: https://autocode.com | | They have a full in-browser editor that handles many-to-many API | integrations with autocomplete and helpers. They also have a CLI | that lets you work with your favorite editors. | ArcaneMoose wrote: | This looks great, congrats on the launch! I am interested in a | platform that bundles many pre-built integrations to various | services that I could wire up through code and execute on my | customers' behalf. Essentially, a way for me to present my | customers with a plethora of integrations out of the box without | having to build them all myself. This seems like it's moving in | that direction and I saw another comment where you mentioned | workflow execution on customers' behalf in the future which is | great! | | How does this compare to something like Prefect? | | If there are any other tools folks would suggest to achieve what | I'm looking for, I'd love to hear about them! | ashrafsam wrote: | We do this at Activepieces (activepieces.com). | ArcaneMoose wrote: | Is there an API or SDK for creating/managing flows? I want | the flexibility to programmatically wire these integrations | together rather than a nocode UI | | Additionally, this seems to rely on you inputting your | credentials. How would that work for a usecase where my | customers are the ones who provide the credentials? | udkl wrote: | > Essentially, a way for me to present my customers with a | plethora of integrations out of the box without having to build | them all myself. | | This is an itch I'm waiting for someone to scratch | rubenfiszel wrote: | We also do this at windmill: https://github.com/windmill- | labs/windmill | UncleSam wrote: | Either "trigger" is a blacklisted word or your domain is on a | list somewhere, because my company has this url blocked under the | "weapons" category. That's unfortunate. | imachine1980_ wrote: | I'm not see the site blacklisted, I'm outside of usa btw, but | inability asume is probably internal policy | Meph504 wrote: | Would be willing to bet your connection has an over aggressive | blocking system going on | mattaitken wrote: | Ugh that sucks, sorry. We love the name but the only thing | holding us back was the association with guns. | robbiemitchell wrote: | Speaking as a tech-forward "business user" who uses Zapier _a | lot_: a key benefit of Zapier is that it enables business users | to work independently. Moving triggers and actions behind | "developer-friendly" (i.e., developer-required) tooling caps how | fast an organization can move on anything outside the critical | path for product and strategy. | | - Core transactional email flow? Great. | | - Alerting Slack for non-critical activities elsewhere? Ehh... | aliqot wrote: | and suddenly at least one of us realizes why zapier costs | money. the cycle continues. | carrja99 wrote: | Comes up all the time. There was another tool like this | (huggin?). | | I think what often gets missed and what gives zapier great | power is the developer platform that can let devs build | anything! I have a lot of custom integrations with apps that | support use cases that afaik only I have. It is incredible | effective. | eddieroger wrote: | I had a lot of bots in Huginn, but the amount of tending | that the garden required versus and the developer | experience were never good enough that I kept them going. I | found myself doing all the JS editing I needed in VSCode | and coping it back and forth, which is a bad experience. It | definitely saved my butt a few times over the last few | years, but I am anxious and excited to swap it out for | this. | bluehatbrit wrote: | Did you mean Huginn? (https://github.com/huginn/huginn) | lolinder wrote: | They already address that specifically: | | > We found current workflow / automation tools like Zapier and | n8n are good for simple tasks, but not for more advanced use | cases. | | This isn't intended to replace Zapier for your use case. | | Speaking as a developer who's been asked to set up integrations | before, I'm glad to see more competition in this space with a | developer focus! | robbiemitchell wrote: | The first example on the homepage is "Create an email drip | feed campaign in under 2 minutes" | | This is not an advanced use case to be developed in house and | owned by developers. This is bread and butter marketing or | product engagement email flows using anything from Mailchimp | to customer.io to HubSpot. | | The developer side would involve capturing the identities and | events from your system and sending them (typically via | something like Segment) to the downstream tools, where | business users will manage those campaigns: flows, templates, | content, integration with other flows, and reporting. | | The next example is "Sync GitHub issues to Linear". Again, | this is a fairly simple Zapier use case, probably using | built-in integrations, or falling back to Python if needed. | Zapier would store the credentials to both security and use a | trigger/action flow. | | I can see trigger.dev being more useful for things like: | | - Schedule-based tasks, or super high-volume tasks. (These | are expensive on platforms) | | - That are driven primarily by code, not pre-built | integrations | | - Using private data (such as authorization tokens) you don't | want to expose in plain text | | Given there is undoubtedly a market of developers who want to | bring things back into their standard codebase and code | release practices, I suggest targeting the examples to | situations to those more typically owned by developers. | mattaitken wrote: | Thanks, this is great feedback. You're right that these | examples don't highlight the real advantage of our platform | vs no-code tools. We're going to add some new examples to | our site based on what our customers are building. | | The three categories of problems you identified that are | best solved with a code tool are what we're seeing with our | early customers. Plus a lot of notification use cases like | when developers want to be notified in Slack when something | important/bad happens. | bradgessler wrote: | It's not hard to imagine a template library or code generator | that sits on top of this code layer that's more approachable to | non-technical users. | | If done well, that would be an advantage over Zapier since a | non-technical user can start something basic, then have a dev | look at it if they need to get more sophisticated. | | This is what has made Excel and Access so successful--a biz | person can get it started and have something tangible to hand | off to a dev. | eallam wrote: | Zapier is great for non-developers, and as developers we've | even used Zapier in the past because in some simple cases it's | actually easier and more reliable than writing the code | yourself! It's not easy to write code that connects even just a | few services together, and handles transient errors and server | interruptions, usually it takes some kind of infrastructure and | maintenance, and can no longer be written in the normal way | (and good luck with delays!). | | We wanted to bring the convenience of Zapier (you describe the | request you want to do, they figure out how to do it!) back | into our codebases, without having to manage a bunch of | infrastructure (that's where trigger.dev comes in). | | While we were at it we built this as a general purpose event- | driven system, complete with AWS Event Bridge like event | pattern filtering, and also added the ability to listen for | webhooks reliably without having to use a tunnel to your local | machine when testing locally. | michaelmior wrote: | > It's not easy to write code that connects even just a few | services together, and handles transient errors and server | interruptions, usually it takes some kind of infrastructure | and maintenance, and can no longer be written in the normal | way (and good luck with delays!). | | Based on the example shown, it looks like Trigger.dev handles | all this while allowing you to write code pretty close to | what I would call "in the normal way." I haven't tried it | myself, but if the examples work as advertised, it looks | pretty attractive to me. | gsanderson wrote: | I was recently looking for a simpler alternative to Temporal | (https://temporal.io/) so this could be ideal. If you could add | instructions for self-hosting it (_sounds_ like you just need an | Express server, but I would guess some backend persistent | store/database/queue too) that would be great. The Webhook | catalog only lists Github: I think integrating with Stripe would | be neat. Like, when someone pays an invoice, Stripe calls a | webhook. That could trigger an action. | mattaitken wrote: | "A simpler alternative to Temporal" is a good description for | us. We'll get a self-hosting guide up soon for you. We're | adding integrations that people ask for as fast as we can build | them and Stripe is high on that list :) | rubenfiszel wrote: | We do this at windmill https://github.com/windmill- | labs/windmill, including self-hosting instructions and pre-made | integrations with stripe | gsanderson wrote: | Ah, ok. Thanks. I'll take a look at that too. | sisve wrote: | Does windmill have any way of going into code, without it | basically becoming "code in a input box". The developer first | solution trigger.dev have here is really scratching a real | problem. But as they say they are not for the easiest | workflows. I'm really looking for something that is gui first | but as a drop down to code when you want. But inline code | editor, let me save it to a git repo or similar. And don't | have globals aka zapiers inputData and output. | rubenfiszel wrote: | > I'm really looking for something that is gui first but as | a drop down to code when you want. But inline code editor, | let me save it to a git repo or similar. | | That's like, exactly what we are, take a look at this | screenshot for instance: https://github.com/windmill- | labs/windmill/blob/main/imgs/win... | | As for syncing code to git, we do it as well through our | CLI and Github Actions: https://github.com/windmill- | labs/windmill-sync-example | [deleted] | gpuhacker wrote: | I'm very unfamiliar with this family of tools, but if anyone | knows a tool like this that can monitor arxiv or Google scholar | for new papers matching a particular query, I'm very interested. | I checked Zapier recently but I didn't see these among the | support apps. | stevekrouse wrote: | This is definitely something you could build in | https://val.town. Someone made a little daily query that checks | for new citations on a particular paper: | | https://www.val.town/ernest.newCitationNotification | | I'm the founder of val.town, so email me if you'd like help | setting this up. I'd be more than happy to pair program with | you on it. My email is steve @ val.town | daveguy wrote: | In Google Scholar, after your search there will be a button at | the end of the page (on mobile, maybe somewhere else on | desktop). The button is "Create alert" with an email icon by | it. Select this and there will be a form for where to send the | alert and the query. Click "Create alert" to get automatically | notified of new results. | Fiahil wrote: | For once, I'd love to have a nice UI around this so I don't need | to search docs and write code for simple stuff like "await | ctx.waitFor({ hours: 3 });". | | That would improve discoverability as well ! | elonmusk11 wrote: | [flagged] | elonmusk11 wrote: | [flagged] | ryan_jiang wrote: | +1 to this problem space. Resonate a lot with the gaps with | Zapier, particularly around the need for escape | hatches/conditional logic when needed--one of the reasons we | built Retool Workflows! https://retool.com/products/workflows/ | TheRealPomax wrote: | Jumping from free to $50/mo feels like there's a 4.99/9.99 plan | missing somewhere. Just because you have 3 people on your team | doesn't mean you can casually spare $50 a month, that's a lot of | money to the vast majority =( | | Especially since a project going from one to three, and in the | rare case four or five, folks is pretty common, but hitting 10 | team members is a serious project milestone. At 10, you're | probably also starting to look at funding. These plans are | missing a tier =S | | (people seem to be falling over themselves trying to read this as | someone who works for a company that can afford this service | complaining there should be a plan that lets them pay less for | it. Instead, take a moment and remember there's an entire unpaid | open source ecosystem out there, with devs who can't afford | Zapier, don't have 50/mo to spend on automation for a project | that gets used, sometimes by billion dollar copmanies, but no one | is paying them for, and who might still want to pay for a service | like this at a tier above "free". Does that mean "trigger.dev | must add a tier"? no of course not, but it would be great to | understand why there's nothing between free and business plan | pricing) | phphphphp wrote: | You work for a billion dollar company, are you speaking from | your perspective as a software engineer or... something else? | Price sensitivity as an individual is understandable but when | you're talking about a team I struggle to understand why | there's a meaningful difference between $5 and $50. For a | business, if software is valuable enough to use, it's valuable | enough to spend $50 on. Plus, $50 is below the threshold most | businesses have for discretionary purchases. | | I'd implore the OP not to get distracted by this sort of | feedback: any serious business user will be more than happy to | spend $50/month on a service like this. Trying to cater to | people who are this price sensitive is a recipe for an | unprofitable nightmare. | TheRealPomax wrote: | Maybe, and this might be confusing, folks didn't always work | where they do today, and have experiences based on "I don't | have money but I work on a project with 5 others that the | world seems to use a ton, but no one's paying for". "A team" | and "a business" are not the same. Running a business? Pay | for team tier. Open source project that just has more than 2 | people organized in a team? I'll let you think of that one. | | And of course, "it's open source, just install it on your own | host" is a perfectly valid response, but "you have money, | what are you complaining about" is maybe a _little_ | ridiculous given that people can voice concerns for an entire | class of folks, not just themselves. $50 is a lot of money | for a lot of folks in open source. | phphphphp wrote: | The situation you're describing is exceptionally niche and | one in which you can simply reach out to the company and | ask for accommodation: there's thousands of open-source | projects sponsored by for-profit companies by granting | access to paid services for free (your employer is one of | them, Fastly sponsor a bunch of projects by giving free | CDN). | | Asking a company to sell their services to everyone at a | huge loss because a minority of open-source projects can't | afford their service is more ridiculous. | TheRealPomax wrote: | It's literally the situation I was in before so: why are | you trying so hard to gaslight what is a perfectly valid | question? They probably have a good reasons for there not | to be a middle tier: if so, cool, but it feels missing so | hopefully they read HN comments and can explain why the | first paid plan jumps straight to $50. | phphphphp wrote: | A challenge many startups face is undervaluing their | service. You started out by saying that their service was | too expensive -- "that's a lot of money to the vast | majority =(" -- which is the sort of complaint that | induces founders to think they need to lower their | prices. They don't. Most startups should be charging | more. $50 is nothing to the customers that Trigger want | to attract in order to succeed. | | I have no beef with your point about open-source | developers having very limited budgets, but it's very | important to contextual your feedback. You specifically | talked about teams of multiple people, it was unclear you | intended to describe a very niche situation. | TheRealPomax wrote: | Thanks for the clarification. I took your comment as a | personal assault from the phrasing, accusing me of being | a hypocrite because I happen to draw a paycheque these | days. Thank you for explaining that wasn't the intention. | armatav wrote: | Honestly it just sounds like you don't need it that bad | TheRealPomax wrote: | What a weird reaction to someone voicing the question that | open source devs will have, for a project that literally says | it's dev-first. | armatav wrote: | Not really - three teammates and the issue is paying $50 a | month? | HatchedLake721 wrote: | ^ this here is the reason why I never want to build SaaS | products for developers. | | If you use and benefit from a product that saves time for 3 | (usually the most highest paid) employees in the business | (developers), you either need re-evaluate how much value this | product provides or re-evaluate your business plan. | TheRealPomax wrote: | Professionals drawing a paycheque, or folks working on a | product? Sure. Open Source that no one pays for even if the | users inclulde multimillion dollar companies because "it's | open source, why should we pay anything"? No. | angio wrote: | You have to account that not everyone is working in the US. | For someone earning 15k$ per year, 600$ is not little money. | cpursley wrote: | Please tell me where I can hire developers for $15k per | year. | kab0b wrote: | Good/Fast/Cheap. You only get one. | simonw wrote: | The problem with $10/month plans is that replying to a single | support email relating to them can swallow your margin for the | month and result in a net loss on that customer. | | You have to sell SO many of those plans for them to become | worthwhile. | | It's a lot easier to sell 100 $50 accounts than it is to sell | 500 $10 accounts, and you end up with customers that are more | likely to increase to even higher tiers in the future. | TheRealPomax wrote: | While true, the free tier already comes with email support | [1] so I'm not sure a $10/mo tier would have any impact in | that respect? | | [1] https://trigger.dev/pricing | collyw wrote: | Nice, Zapier is a pretty interesting solution but the pricing | model is not. | revskill wrote: | Please make curl example on how to send custom event , instead of | using nodejs sdk ? | justin_oaks wrote: | Yes, the best API documentation includes curl examples | regardless of any other examples. | | With SDK examples you have to set up a code project, install | the SDK, add some boilerplate code, make the API call, and | figure out out to display/use the output. Ugh. | | With curl examples you can run the example with no set up, just | a little customization. You just run a single command. Easy- | peasy. ___________________________________________________________________ (page generated 2023-02-01 23:00 UTC)