Coder Social home page Coder Social logo

frain-dev / convoy Goto Github PK

View Code? Open in Web Editor NEW
2.3K 20.0 119.0 77.1 MB

The Cloud Native Webhooks Gateway

Home Page: https://getconvoy.io

License: Mozilla Public License 2.0

Go 65.90% Dockerfile 0.01% JavaScript 0.39% SCSS 0.76% HTML 15.31% Shell 0.40% Makefile 0.02% TypeScript 16.81% MDX 0.18% PLpgSQL 0.21%
webhooks convoy golang automation cli cloud infrastructure webhooks-server angular incoming-webhooks

convoy's People

Contributors

adelowo avatar alob-mtc avatar benji-york avatar creamymilk avatar danvixent avatar djperrefort avatar dotunj avatar horlah avatar jirevwe avatar kamikazechaser avatar matt-glover avatar mekilis avatar nitzangoldfeder avatar nrjdalal avatar obbap1 avatar ogbanugot avatar oluwadaminiola avatar oneeyedsunday avatar punk1234 avatar stevewdamesjr avatar subomi avatar testwill avatar viclotana avatar vitorscassiano avatar youngestdev avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

convoy's Issues

User can create URL/Events.

Essentially, this is a breaking change towards v0.2. This will allow users provide multiple endpoints for different events.

Allow get command accept a filter

Right now, hookcamp get organisations retrievs all orgs in the db. It
should be possible to do hookcamp get organisations uniquename

Cluster Authentication.

Build authentication layer to support two scenarios

  • No auth, full access.
  • Basic auth (username & password)

Others:

  • Remove API key from Organisation.
  • Configuration should be done in the configuration file.

Setup Basic UI

  • Basic setup for FE contribution & dependencies
  • Design & Code Basic UI

Enable error tracking.

Enable us track errors in Convoy to ease production debugging. At least - Sentry, other tools can come later. :)

App crash when no Delivery Attempt has been made.

When I send an event and the status is Scheduled. Clicking on the event crashes the app. The console shows the details:

react-dom.production.min.js:216 TypeError: Cannot read properties of undefined (reading 'ip_address')
    at I (index.js:485)
    at ro (react-dom.production.min.js:157)
    at Wo (react-dom.production.min.js:180)
    at qs (react-dom.production.min.js:269)
    at Ml (react-dom.production.min.js:250)
    at Sl (react-dom.production.min.js:250)
    at Ol (react-dom.production.min.js:250)
    at gl (react-dom.production.min.js:243)
    at react-dom.production.min.js:123
    at t.unstable_runWithPriority (scheduler.production.min.js:18)

App Level Secrets

  • Move secrets from the endpoint layer to the app layer.
  • Sign every webhook payload before fan-out.

Ensure we save events without active endpoints.

When we receive events to apps without an active endpoint, we should ensure we save the events and record it as discarded. This will enable users easily retry the events from the UI vs. doing some grunt work, to pull the events from their dB and send the events back to Convoy.

Enable user config hash function.

As of today, different people use different hash functions for their webhooks implementation, It'll require a lot if every user migrating to Convoy needs to require their end users to make a change as well. Migrating to Convoy should be seamless & require no end user code change at all.

Essentially, let's enable users config their preferred hash function - sha256, sha512 etc.

Format Hookcamp Response & Payload sent out.

Webhooks sent to endpoints should carry this format:

{
  "event": "charge.success",
  "data": {
     // payload.
   }
}

Hookcamp server response should carry this format:

{
   "status": true,
   "message": "Event sent successfully",
   "data": {
      // payload.
   }

UI APIs

All Basic UI necessary APIs.

Easily filter event log by apps.

Currently, we can filter the event log by the apps filter. It will be desirable to be able to click an app from the app list to automatically set the filter and show it's event logs.

Show Convoy version on Dashboard.

Currently, the Convoy dashboard shows Convoy alone. We should find somewhere on the dashboard to reflect the version number to enable debugging that specific deployment.

Improve Delivery Attempt page.

This is an effort towards v0.2. The Delivery attempt page should be improved to enable easier debugging.

For context, the delivery attempt page is the side bar to the right below.
Screenshot 2021-09-12 at 17 59 53

The reference UI should be similar to what Github provides see here.

Fan Out

Send webhooks messages out to the endpoint.

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.