Giter Club home page Giter Club logo

pipedream's Introduction

pipedream

Pipedream is a platform for running hosted, backend components.

Pipedream components are reusable Node.js modules that run code on specific events: HTTP requests and timers. Components are free to run and simple to learn. Here's a component that spins up a hosted HTTP server on deploy and logs inbound HTTP requests:

module.exports = {
  name: "http",
  version: "0.0.1",
  props: {
    http: "$.interface.http"
  },
  run(event) {
    console.log(event); // event contains the method, payload, etc.
  }
};

Components come with a built-in key-value store, an interface for passing input via props, and more. You deploy and manage components using Pipedream's REST API, CLI, or UI.

Components can emit events, which can be retrieved programmatically via CLI, API or SSE. They can also trigger Pipedream workflows on every event. For example, you can process items from an RSS feed and access the items via REST API, or trigger code to run on every new item using the SSE interface or a workflow. Components that emit events are called event sources.

Usage

Install the Pipedream CLI:

curl https://cli.pipedream.com/install | sh

Then deploy a component from the registry:

pd deploy   # prompts you to select a component and pass required options

Get started by reviewing the quickstart on HTTP Event Sources, or review the docs to learn more.

Docs

Why use components?

Components are similar to serverless functions, like those offered by AWS Lambda. You don't have to manage the server that runs the code — components are hosted on Pipedream infrastructure — and they run on specific events like HTTP requests and timers.

But we believe components are simpler to learn, write, and maintain for many use cases. They let you focus more on the code, and less on the configuration of the function and its associated services:

  • You can configure an HTTP server via props, and can use a built-in key-value store to manage state. Components creates the HTTP interface for you on deploy, and the key-value store comes for free: there's no need to create these resources manually.
  • Components are meant to be reusable. They can accept input via props, which a user sets on deploy.
  • Components are self-contained. Their name, version, props, and code are all defined in one file. This makes components easy to understand at a glance, and easy to fork and modify.

This is also an early release. The component API will improve over time. Right now, we're looking for any and all feedback. Tell us what you're building, what works and what doesn't, and anything you think would improve the product.

Pricing

Pipedream is currently free, subject to the limits noted below. Paid tiers for higher volumes are coming soon.

If you exceed any of these limits, please reach out.

Limits

Components are subject to the limits of the Pipedream platform.

Getting Support

You can get help on our public Slack or reach out to our team directly with any questions or feedback. We'd love to hear from you!

Found a Bug? Have a Feature to suggest?

Any bugs or feature requests for specific components can be raised in this repo as new Github issues or pull requests.

Pipedream also operates a roadmap to solicit feature requests for the Pipedream platform at large (the pipedream.com UI, workflows, the CLI, etc).

You can always reach out to our team - we're happy to discuss feedback or help fix a bug.

pipedream's People

Contributors

todsac avatar dylburger avatar psavkar avatar michelle0927 avatar tjk avatar paulkinlan avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.