diff --git a/Configuration-File.md b/Configuration-File.md
new file mode 100644
index 0000000..eb2038f
--- /dev/null
+++ b/Configuration-File.md
@@ -0,0 +1,54 @@
+# Configuration File
+When Gaseous-Server is started for the first time, it creates a configuration file at ~/.gaseous-server/config.json if it doesn't exist. Some values can be filled in using environment variables (such as in the case of using docker).
+
+### DatabaseConfiguration
+| Attribute | Environment Variable | Default Value |
+| --------- | -------------------- | ------------- |
+| HostName | dbhost | localhost |
+| UserName | dbuser | gaseous |
+| Password | dbpass | gaseous |
+| DatabaseName | dbname | gaseous |
+| Port | dbport | 3306 |
+
+### MetadataConfiguration
+| Attribute | Environment Variable | Possible Values | Default Value |
+| --------- | -------------------- | --------------- | ------------- |
+| MetadataSource | metadatasource | IGDB | IGDB |
+| SignatureSource | signaturesource | LocalOnly
Hasheous | LocalOnly |
+| MaxLibraryScanWorkers | maxlibraryscanworkers | | 4 |
+| HasheousHost | hasheoushost | | https://hasheous.org/ |
+
+### IGDBConfiguration
+| Attribute | Environment Variable |
+| --------- | -------------------- |
+| ClientId | igdbclientid |
+| Secret. | igdbclientsecret |
+
+### config.json
+```json
+{
+ "DatabaseConfiguration": {
+ "HostName": "localhost",
+ "UserName": "gaseous",
+ "Password": "gaseous",
+ "DatabaseName": "gaseous",
+ "Port": 3306
+ },
+ "MetadataConfiguration": {
+ "MetadataSource": "IGDB",
+ "SignatureSource": "LocalOnly",
+ "MaxLibraryScanWorkers": 4,
+ "HasheousHost": "https://hasheous.org/"
+ },
+ "IGDBConfiguration": {
+ "ClientId": "",
+ "Secret": ""
+ },
+ "LoggingConfiguration": {
+ "DebugLogging": false,
+ "LogRetention": 7,
+ "AlwaysLogToDisk": false
+ }
+}
+
+```
\ No newline at end of file