Transpose is a cloud native composable proxy with a focus on kubernetes written in go.
- NOTE: Transpose is pre alpha and under heavy development
- Composable
- Observable
- Simple
- Lightwieght
- Developer friendly
- Cloud native
Example config:
apiVersion: alpha.aunem.com/v1
Kind: Transpose
Metadata:
name: myProxy
namespace: default
spec:
listener:
name: myHttplistener
package: github.com/aunem/transpose-plugins/listener/http
spec:
port: 80
ssl: false
middleware:
request:
- name: hydraAuth
package: github.com/aunem/transpose-plugins/middleware/hydra
spec:
authUrl: my.auth.com
clientID: transposeClient
response:
- name: hydraAuth
package: github.com/aunem/transpose-plugins/middleware/hydra
spec:
authUrl: my.auth.com
clientID: transposeClient
auditUrl: my.audit.com
roundtrip:
name: myroundtrip
package: github.com/aunem/transpose-plugins/roundtrip/supermux
spec:
http:
- path: "/"
backend:
serviceName: myservice
servicePort: 80see start.md for more details
- Envoy github.com/envoyproxy/envoy
- Traefik github.com/containous/traefik
- Gentleman github.com/h2non/gentleman
- Istio github.com/istio/istio
- OpenFaas github.com/openfaas/faas
- Oxy github.com/vulcand/oxy
- Gorrilla Mux github.com/gorilla/mux
- Middleware plugins
- Roundtrip plugins
- Listener plugins
- HTTP/2
- GRPC
- Data plane
- Egress
Development happens out of the Makefile. The targets are fairly simple but if you have any issues contact us.