diff --git a/README.md b/README.md
index b2a84de..715bc21 100644
--- a/README.md
+++ b/README.md
@@ -1,4 +1,58 @@
-evilmusic
+EvilMusic
=========
-Web based music player for lossless formats.
\ No newline at end of file
+Web based music player for lossless formats.
+
+## Supported Formats
+ * [FLAC](https://xiph.org/flac)
+
+## External Dependencies
+ * `gradle`: Gradle is used to build (and currently to run) EvilMusic. It can be obtained from https://www.gradle.org.
+ * `metaflac`: The `metaflac` command is required to read meta data from FLAC files. It can be obtained from the `flac` package using the command, `apt-get install flac`.
+
+## Building
+In the project's root directory, execute `gradle build`.
+
+## Running
+In the project's root directory, execute `gradle bootrun`. This uses [Spring Boot](http://projects.spring.io/spring-boot) to start the server at `localhost:8080`.
+
+**Note:** Issue [#20](https://github.com/eviljoe/evilmusic/issues/20) has been created to address how confusing starting the server is for a non-tech-savvy user.
+
+## Configuration
+The `/src/main/resources/em.properties` file can be used to configure EvilMusic [2]. The following are settings that can be specified within it.
+
+**Note:** Issue [#21](https://github.com/eviljoe/evilmusic/issues/21) has been created to address how confusing the configuration file is for a non-tech-savvy user.
+
+#### em.music_directories
+A semicolon (;) separated list of directories that should be searched for music files.
+
+`$home` is a special keyword to represent the current user's home directory. If a directory within the list starts with `$home`, the `$home` will be replaced with the user's home directory. For example, if the user is "eviljoe", a directory specified as `$home/Music` will actually search the `/home/eviljoe/Music` directory for music files.
+
+*Default Value:* *none*
+*Example Usage:*
+ * `em.music_directories=$home/Documents/music`
+ * `em.music_directories=/first/music/directory;/second/music/directory`
+
+#### em.metaflac_command
+Specifies the location of the `metaflac` command. This command is used to read meta data from FLAC files.
+
+*Default Value:* `metaflac`
+*Example Usage*
+ * `em.metaflac_command=/usr/bin/metaflac`
+
+#### em.database.home
+Specifies the location of the database. EvilMusic uses a file system database ([Derby](http://db.apache.org/derby/)) to store information about the user's music library.
+
+`$home` is a special keyword to represent the current user's home directory. If this directory starts with `$home`, the `$home` will be replaced with the user's home directory. For example, if the user is "eviljoe", a directory specified as `$home/db` will actually use `/home/eviljoe/db` as the database home directory.
+
+*Default Value:* `$home/.evilmusic`
+*Example Usage:*
+ * `em.database.home=$home/db`
+ * `em.database.home=/foo/bar/database-home`
+
+#### em.database.rollback_on_close
+*This value should not be used for unless you are developing for EvilMusic.* If this property is set to `true`, the entire database will be cleared out after the EvilMusic server is no longer running.
+
+*Default Value:* `false`
+*Example Usage:*
+ * `em.database.rollback_on_close=false`
\ No newline at end of file