1. A method, comprising: retrieving one or more configuration data sets and a template configuration data set from a stored plurality of configuration data sets using a computing device, wherein each configuration data set of the one or more configuration data sets and the template configuration data set comprises a plurality of key-value pairs related to configuring a software application, wherein the template configuration data set comprises a template rule for determining a particular key-value pair, and wherein a key-value pair of the plurality of key-value pairs comprises a key name and a value associated with the key name; determining a context for the template configuration data set using the computing device, the context comprising a context key-value pair, the context key-value pair including a context key name and a context value associated with the context key name; generating a concrete configuration data set based on the template configuration data set by resolving the template rule of the template configuration data set by using the context value of the context key-value pair to determine the particular key-value pair for the concrete configuration data set using the computing device, wherein the particular key-value pair includes a particular key name that differs from the context key name of the context key-value pair, and wherein the template rule is not present in the concrete configuration data set; merging the one or more configuration data sets and the concrete configuration data set into a merged configuration data set for the software application by the computing device by at least: determining whether multiple key-value pairs of the one or more configuration data sets and the concrete configuration data set are in conflict, after determining that multiple key-value pairs of the one or more configuration data sets and the concrete configuration data set are in conflict, determining a representative key-value pair to represent the multiple key-value pairs, and adding the representative key-value pair to the merged configuration data set; providing the merged configuration data set to the software application using the computing device; and executing the software application on the computing device using the merged configuration data set to control application behavior.