github-webhooks alternatives and similar packages
Based on the "GitHub" category.
Alternatively, view github-webhooks alternatives based on common mentions on social networks and blogs.
-
github-types
This package includes (some) type definitions for objects which are consumed or produced by the GitHub v3 API
CodeRabbit: AI Code Reviews for Developers
Do you think we are missing an alternative of github-webhooks or a related project?
README
[github-webhooks Mascot](./doc/github-webhooks-mascot-248.svg) \
github-webhooks
release |
master |
|
---|---|---|
Linux & OSX | ||
Windows |
Complete Haskell types and instances for decoding GitHub API Webhook payloads.
Features
- Best-in-class JSON decoding via aeson.
- Unicode string support via text.
- Suitable for large data payloads using vector.
- Type-safe encoding of optional data.
- Type-safe event action encodings with support for future API changes.
- Instances for Typeable, Data, Generic and NFData.
- Strongly typed utility classes EventHasSender, EventHasRepo et al.
- Strict data types suitable for high performance streaming operations.
- Full support for these event types.
Installation
github-webhooks
is available via installation on Hackage and Stackage.
Examples
Minimal working example:
$ stack ghci bytestring aeson github-webhooks
import qualified Data.ByteString.Lazy as BSL
import Data.Aeson ( eitherDecode' )
json <- BSL.readFile "fixtures/watch-event.json"
eitherDecode' json :: Either String WatchEvent
Some practical integration examples are also provided:
- [Servant Integration (Simple)](./examples/servant-simple#readme)
Minimal working example of integrating this package with servant and servant-github-webhook. - [Servant Integration (Typical)](./examples/servant-adv#readme)
This example demonstrates more advanced use-cases with servant by decoding multiple different types of payloads on the same endpoint. - [Scotty Integration](./examples/scotty#readme)
Minimal working example of integrating this package with scotty.
Changelog
See [CHANGELOG.md](./CHANGELOG.md) for a summary of changes in each release.
Roadmap
See [ROADMAP.md](./ROADMAP.md) for the project timeline and feature estimation of future releases.
Authors
See [AUTHORS](./AUTHORS) for a list of significant authors.
License
MIT License
Copyright (c) 2017-2020 Cuedo Business Solutions (https://cuedo.com.au)
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
Free open source software, sponsored by cuedo.com.au. \ \ [Cuedo Business Solutions](./doc/cuedo-color-256.svg)
*Note that all licence references and agreements mentioned in the github-webhooks README section above
are relevant to that project's source code only.