Marketplace
<div align="center"> <h3>Premium sponsors</h3> <p><a href="https://id8media.com"><strong>ID8 Media</strong></a> · <a href="https://one-studio.co"><strong>One Studio</strong></a></p> <p><sub>Support togo — <a href="https://github.com/sponsors/fadymondy">become a sponsor</a>.</sub></p> </div>
DNS / Proxy
Other4 providersManage DNS records, reverse-proxy hosts & gateway routes.
togo-framework
bash
togo install togo-framework/dnsInstall
bash
togo install togo-framework/dnsdns is togo's DNS / reverse-proxy / API-gateway subsystem. One Provider
contract spans three control planes that normally have nothing in common:
Capability | Drivers |
|---|---|
| Authoritative DNS records | dns-cloudflare |
| Reverse-proxy hosts | dns-npm (Nginx Proxy Manager), dns-caddy |
| API-gateway routes | dns-kong (+ Supabase) |
Rows per page
1–3 of 3Page 1 of 1
The default log driver records intent without touching anything — safe for dev
and tests. Pick a real driver with DNS_DRIVER and install its plugin.
Usage
go
import (
"github.com/togo-framework/dns"
_ "github.com/togo-framework/dns-cloudflare" // registers the driver
)
svc, _ := dns.FromKernel(k)
svc.UpsertRecord(ctx, "example.com", dns.Record{Type: "A", Name: "app", Content: "203.0.113.10", Proxied: true})
svc.UpsertProxyHost(ctx, dns.ProxyHost{Domain: "app.example.com", Upstream: "http://127.0.0.1:8080", SSL: true})
svc.UpsertRoute(ctx, dns.Route{Domain: "api.example.com", Path: "/v1", Upstream: "http://gateway:8000"})
Operations a driver doesn't support return dns.ErrUnsupported.
Config
Env | Meaning |
|---|---|
| DNS_DRIVER | log (default), cloudflare, npm, caddy, kong |
Rows per page
1–1 of 1Page 1 of 1
Each driver reads its own credentials — see that plugin's README.
<div align="center"> <h3>Premium sponsors</h3> <p><a href="https://id8media.com"><strong>ID8 Media</strong></a> · <a href="https://one-studio.co"><strong>One Studio</strong></a></p> <p><sub>Support togo — <a href="https://github.com/sponsors/fadymondy">become a sponsor</a>.</sub></p> </div>