Consul's capabilities can be extended through integration with other tools. Learn about Consul-related tools created by HashiCorp and by the Consul community.
- [Consul API Gateway](https://github.com/hashicorp/consul-api-gateway/) - dedicated ingress solution for intelligently routing traffic to applications running on a Consul Service Mesh.
- [Consul ESM](https://github.com/hashicorp/consul-esm) - Provides external service monitoring for Consul. Complete the [tutorial](https://consul.io/(https://learn.hashicorp.com/tutorials/consul/service-registration-external-services?utm_source=docs)) to learn more.
- [Consul Template](https://github.com/hashicorp/consul-template) - Generic template rendering and notifications with Consul. Complete the [tutorial](/consul/tutorials/developer-configuration/consul-template?utm_source=docs) to the learn more.
These Consul tools are created and managed by the amazing members of the Consul community:
- [Autowire](https://github.com/geniousphp/autowire) - Auto-configure [WireGuard](https://www.wireguard.com/) network interfaces and Peers using Consul cluster
- [cfg4j](http://www.cfg4j.org) - Configuration library for Java distributed apps. Reads and auto-updates configuration from Consul KVs (and others)
- [cfg4j-pusher](https://github.com/cfg4j/cfg4j-pusher) - Command line app that pushes values from configuration files (YAML, properties, etc.) to Consul KVs
- [confd](https://github.com/kelseyhightower/confd) - Manage local application configuration files using templates and data from etcd or Consul
- [consul-announcer](https://github.com/ncbi/consul-announcer) - Command line wrapper for registering services in Consul
- [consul-backinator](https://github.com/myENA/consul-backinator) - Command line Consul KV backup and restoration utility
- [consul-bench](https://github.com/criteo/consul-bench) - Golang tool to bench Consul. Intended for benching Consul version for large Clusters.
- [consul-cli](https://github.com/CiscoCloud/consul-cli) - Command line interface to Consul HTTP API
- [consul-do](https://github.com/zeroXten/consul-do) - Do something, such as run HA cronjobs, based on Consul leadership status
- [consul-kv-json](https://github.com/opencopilot/consul-kv-json) - Golang helper utility for translating JSON trees into Consul KV pairs, and vice versa
- [consul-templaterb](https://github.com/criteo/consul-templaterb/) - Ruby [gem](https://rubygems.org/gems/consul-templaterb) and executable hi-performance ERB templating to create configuration files, HTML, JSON, XML content from Consul discovery and KV Data. Executable `consul-templaterb` also support reload commands as well as process management.
- [consult](https://github.com/veracross/consult/) - Ruby [gem](https://rubygems.org/gems/consult) supporting Consul and Vault templating through ERB, with easy Rails integration and support for complex templates, including templates that come from Consul itself for shared configuration across apps.
- [Consultant](https://github.com/Magnetme/consultant) - Library for Java services to self register and deregister, fetching configuration, and subscribing to configuration changes.
- [crypt](http://xordataexchange.github.io/crypt/) - Store and retrieve encrypted configuration parameters from etcd or Consul
- [docker-consul](https://github.com/gliderlabs/docker-consul) - Dockerized Consul Agent
- [Dropwizard Consul Bundle](https://github.com/smoketurner/dropwizard-consul) - Service discovery and configuration integration with the [Dropwizard](http://www.dropwizard.io/) framework
- [Embedded Consul](https://github.com/pszymczyk/embedded-consul) - Library for JVM based applications, provides easy way to run Consul in integration tests
- [files-to-consul-kv](https://github.com/bitsofinfo/files-to-consul-kv) - Ultra simple, configuration free CLI tool for syncing a directory structure of key-value files to Consul KV using the transactions API. Docker image available. Integrates easily into any CI/CD workflow.
- [file2consul](https://github.com/joeatbayes/file2consul) - Update Consul values from git or files. Config loader with support for multiple environments. Provides variable expansion, interpolation, inheritance with overrides and ability to update multiple consul servers. Reduces cost of maintaining larger configuration sets between environments by reducing restatement and manual editing of similar or predictably changing config properties. MIT license, Written in GO.
- [Flightpath](https://docs.flightpath.xyz/) - An xDS server that can configure Envoy to act as an Edge proxy for Consul Connect enabled services
- [git2consul](https://github.com/ryanbreen/git2consul) - Mirror the contents of a Git repository into Consul KVs
- [HashiBox](https://github.com/nunchistudio/hashibox) - Vagrant environment to simulate highly-available cloud with Consul, Nomad, Vault, and optional support for Waypoint. OSS & Enterprise supported.
- [string2files](https://github.com/heronimus/ct-plugin-string2files) - Standalone plugin to write multiple files from Consul K/V tree or combine them with Vault secret data using only a single Consul-Template file.
Are you the author of a tool and you would like to be featured on this page? The Consul website is open source and is embedded inside the [Consul repository](https://github.com/hashicorp/consul) on GitHub. You can submit a Pull Request to add your tool to the list and we will gladly review it.