Hi @chrigi - welcome to the community! Component actions are currently in beta and we are continuing to iterate so your feedback is valuable — thanks for sharing! If you’re open to it, I’d love to connect over Zoom to discuss more and learn about your use cases. Feel free to schedule time on my calendar via Calendly. I’ll also try to address your questions as best I can below.
First, sorry for the gaps you noted in the docs — we’ll get those loaded up on our backlog to address. If you have an opinion on where specific clarifications would have helped and you want to contribute, you can submit a PR to our docs on Github. If not, we’ll address them!
Following are responses to your specific questions:
The “Actions Quickstart” uses the component option “type” set to “action” so I would assume I would have to set that to “source” when developing a source but in the “Source Quickstart” it never even mentions that option and in the component reference docs, this option is not even listed at all.
type field was introduced for the actions beta (it is currently not required for sources). We expect that this will be added to sources once we further validate the changes made for the actions beta.
Is there any way to test Actions without creating a Workflow and constantly re-publish, update in UI, run?
Not currently. However, this is on our radar as we iterate on the beta release.
The “Sources Quickstart” only discussed “pd dev” but does not mention if it also uses “publish” for deployment like actions
We haven’t announced source publishing yet, but we’re working on it — stay tuned!
What’s the difference between “update” and “publish”/“deploy”?
deploy a component to Pipedream you create a running, configured instance. For example, when you deploy the RSS source, you configure it with the feed URL and it creates a resource that runs independently on Pipedream and emits new items as events (which can be used to trigger workflows). The
update command allows you to modify a specific deployed instance (e.g., you can update the code or configuration).
publish a component, you essentially create an un-configured template that can be instantiated. For example, published actions can be added to a workflow where they can be configured, and the workflow can be deployed, but the published actions themselves don’t run independently.
The used “key” in the “Actions Quickstart” does not follow your recommended best practices mentioned in the component ref docs
When you publish a component to your own account, you can name the key anything you want (you should just make sure it’s unique across all of your components). The specific key structure that is defined in the docs only applies to components that are submitted to the Pipedream registry on Github.
Do I see this correct, that props don’t have a “placeholder”/“example” anymore?
Correct. Component props don’t currently support “placeholder” text, but that is planned.
The Interface Props overview table doesn’t list DB but it is documented on the page
db is a service prop — you can learn more here: Component API Reference. Let me know if I misinterpreted your feedback.
I don’t understand “propDefinitions”, “app” objects and “app” props. They all seem to mix the “app” naming to mean different things I think. “app” props are for managed auth I think? But the “app” objects for the “propDefinitions” are something else? Especially as you define the following in your component: pipedream/new-item-in-feed.js at 519b63d240aee695688699853d4c75f7f4dd59e1 · PipedreamHQ/pipedream · GitHub but you include the exact same thing again here: pipedream/new-item-in-feed.js at 519b63d240aee695688699853d4c75f7f4dd59e1 · PipedreamHQ/pipedream · GitHub 1
We are still working on improving the experience when working with app libraries in components. The issues you noted with the RSS source are definitely a bug. I’ll make sure that’s logged for resolution.
It would also be amazing if the custom actions would at least be listed in the UI just the same way custom sources are. Currently I can’t see my custom action anywhere but in the workflow editor and can’t delete/unpublish it from the UI.
We plan to introduce a UI to manage your published components (so you view, delete, share, etc). I created a Github issue that you can +1 and follow.
I hope that helps answer some of your questions. Feel free to follow up if you have any other questions. And again, it would be great to connect over Zoom if you’re open to it.