All Projects → BBVA → Kapow

BBVA / Kapow

Licence: apache-2.0
Kapow! If you can script it, you can HTTP it.

Programming Languages

go
31211 projects - #10 most used programming language
shell
77523 projects

Projects that are alternatives of or similar to Kapow

Healthcheck
An simple, easily extensible and concurrent health-check library for Go services
Stars: ✭ 161 (-69.39%)
Mutual labels:  api, microservice
Go Grpc Http Rest Microservice Tutorial
Source code for tutorial "How to develop Go gRPC microservice with HTTP/REST endpoint, middleware, Kubernetes deployment, etc."
Stars: ✭ 250 (-52.47%)
Mutual labels:  api, microservice
Tenso
Tenso is an HTTP REST API framework
Stars: ✭ 167 (-68.25%)
Mutual labels:  api, microservice
Symfony Jsonapi
JSON API Transformer Bundle for Symfony 2 and Symfony 3
Stars: ✭ 114 (-78.33%)
Mutual labels:  api, microservice
Grapi
😮 A surprisingly easy API server and generator in gRPC and Go
Stars: ✭ 364 (-30.8%)
Mutual labels:  api, microservice
Appkernel
API development made easy: a smart Python 3 API framework
Stars: ✭ 152 (-71.1%)
Mutual labels:  api, microservice
Lndhub
Wrapper for Lightning Network Daemon. It provides separate accounts and trust minimization for end users
Stars: ✭ 203 (-61.41%)
Mutual labels:  api, microservice
Graphql Microservices
Showcasing a graphql microservice setup
Stars: ✭ 68 (-87.07%)
Mutual labels:  api, microservice
Kanary
A minimalist web framework for building REST APIs in Kotlin/Java.
Stars: ✭ 319 (-39.35%)
Mutual labels:  api, microservice
Laravel5 Jsonapi
Laravel 5 JSON API Transformer Package
Stars: ✭ 313 (-40.49%)
Mutual labels:  api, microservice
Phalapi
A PHP framework foucs on API fast development.接口,从简单开始!PhalApi简称π框架,一个轻量级PHP开源接口框架,专注于接口服务开发。
Stars: ✭ 1,365 (+159.51%)
Mutual labels:  api, microservice
Typescript Rest
This is a lightweight annotation-based expressjs extension for typescript.
Stars: ✭ 458 (-12.93%)
Mutual labels:  api, microservice
Health Checks Api
Standardize the way services and applications expose their status in a distributed application
Stars: ✭ 78 (-85.17%)
Mutual labels:  api, microservice
Tree Gateway
This is a full featured and free API Gateway
Stars: ✭ 160 (-69.58%)
Mutual labels:  api, microservice
Chubbyphp Framework
A based PSR-15 microframework that also sets maximum flexibility with minimum complexity and easy replaceability of the individual components, but also of the framework.
Stars: ✭ 69 (-86.88%)
Mutual labels:  api, microframework
Proteus
Lean, mean, and incredibly fast JVM framework for web and microservice development.
Stars: ✭ 178 (-66.16%)
Mutual labels:  api, microservice
Go Restful Api
An idiomatic Go REST API starter kit (boilerplate) following SOLID principles and Clean Architecture
Stars: ✭ 1,043 (+98.29%)
Mutual labels:  api, microservice
Up
Up focuses on deploying "vanilla" HTTP servers so there's nothing new to learn, just develop with your favorite existing frameworks such as Express, Koa, Django, Golang net/http or others.
Stars: ✭ 8,439 (+1504.37%)
Mutual labels:  api, microservice
Manba
HTTP API Gateway
Stars: ✭ 3,000 (+470.34%)
Mutual labels:  api, microservice
Awesome Ocelot
A curated list of awesome ocelot books, courses, trainings, conference talks, blogs and most inspiring open source contributors
Stars: ✭ 386 (-26.62%)
Mutual labels:  api, microservice

Kapow! Logo

If you can script it, you can HTTP it.

Test status Go Report Open Issues Documentation Current Version


What's Kapow!

Say we have a nice cozy shell command that solves our problem. Kapow! lets us easily turn that into an HTTP API.

Let's see this with an example

We want to expose log entries for files not found on our Apache Web Server, as an HTTP API. With Kapow! we just need to write this executable script:

[apache-host]$ cat search-apache-errors
#!/usr/bin/env sh
kapow route add /apache-errors - <<-'EOF'
	cat /var/log/apache2/access.log | grep 'File does not exist' | kapow set /response/body
EOF
[apache-host]$ chmod +x search-apache-errors

and then, run it using Kapow!

[apache-host]$ kapow server search-apache-errors

finally, we can read from the just-defined endpoint:

[another-host]$ curl http://apache-host:8080/apache-errors
[Fri Feb 01 22:07:57.154391 2019] [core:info] [pid 7:tid 140284200093440] [client 172.17.0.1:50756] AH00128: File does not exist: /usr/var/www/mysite/favicon.ico
[Fri Feb 01 22:07:57.808291 2019] [core:info] [pid 8:tid 140284216878848] [client 172.17.0.1:50758] AH00128: File does not exist: /usr/var/www/mysite/favicon.ico
[Fri Feb 01 22:07:57.878149 2019] [core:info] [pid 8:tid 140284208486144] [client 172.17.0.1:50758] AH00128: File does not exist: /usr/var/www/mysite/favicon.ico
...

Why Kapow! shines in these cases

  • We can share information without having to grant SSH access to anybody.
  • We can share information easily over HTTP.
  • We can effectively limit what gets executed.

Documentation

You can find the complete documentation and examples here.

Security

Please consider the following Security Concerns before using Kapow!

If you are not 100% sure about what you are doing we recommend not using Kapow!

Authors

Kapow! is being developed by BBVA-Labs Security team members.

Kapow! is Open Source Software and available under the Apache 2 license.

Contributions

Contributions are of course welcome. See CONTRIBUTING or skim existing tickets to see where you could help out.


Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].