--- title: Welcome --- # Caddy Welcomes You Caddy is a powerful, extensible platform to serve your sites, services, and apps, written in Go. Although most people use it as a web server or proxy, it is an excellent choice for a: - web server - reverse proxy - sidecar proxy - load balancer - API gateway - ingress controller - system manager - process supervisor - task scheduler - (any long-running process) and operates primarily at L4 (transport layer) and L7 (application layer) of the [OSI model](https://en.wikipedia.org/wiki/OSI_model), though it has the ability to work with other layers. Configuration is both dynamic and exportable with [Caddy's API](/docs/api). Although no config files required, you can still use them; most people's favorite way of configuring Caddy is using the [Caddyfile](/docs/caddyfile). The format of the config document takes many forms with [config adapters](/docs/config-adapters), but Caddy's native config language is [JSON](/docs/json/). Caddy compiles for all major platforms and has no runtime dependencies.