diff --git a/.gitignore b/.gitignore
--- a/.gitignore
+++ b/.gitignore
@@ -9,6 +9,6 @@
 *build/
 *dist/
 *.egg*
-/env
+/env*/
 .coverage
 htmlcov/
diff --git a/README.md b/README.md
--- a/README.md
+++ b/README.md
@@ -1,33 +1,54 @@
 # ResultsDB
 
-ResultsDB is a results store engine for (not only) FedoraQA tools.
+ResultsDB is a results store engine for (not only) Fedora QA tools.
 
 ## Repositories
 
 * ResultsDB Frontend - [Bitbucket GIT repo](https://bitbucket.org/fedoraqa/resultsdb_frontend)
 * ResultsDB Client Library - [Bitbucket GIT repo](https://bitbucket.org/fedoraqa/resultsdb_api)
 
-## Hacking
+## Quick development setup
 
 First, clone the repository.
 
-Then, setup a virtual environment for development.
+Then, setup a virtual environment for development:
 
-    $ sudo yum install python-virtualenv
-    $ virtualenv resultsdb
-    $ source resultsdb/bin/activate
+    $ sudo dnf install python-virtualenv
+    $ virtualenv env_resultsdb
+    $ source env_resultsdb/bin/activate
     $ pip install -r requirements.txt
-    $ python setup.py install
 
-Setup a config file:
+Initialize your database:
 
-    $ cp conf/settings.py.example conf/settings.py
-    $ # edit conf/settings.py accordingly
+    $ DEV=true ./init_db.sh
 
-Initialize your database:
+Run the server:
+
+    $ DEV=true python runapp.py
+
+The server is now running with a very simple frontend at <http://localhost:5001>.
+API calls can be sent to <http://localhost:5001/api/v1.0>. All data is stored
+inside `/var/tmp/resultsdb_db.sqlite`.
+
+## Adjusting configuration
+
+You can configure this app by copying `conf/settings.py.example` into
+`conf/setting.py` and adjusting values as you see fit. It overrides default
+values in `resultsdb/config.py`.
+
+## Using with libtaskotron
+
+You might want to use this tool together with libtaskotron. To use your own
+*ResultsDB* server in libtaskotron, edit `/etc/taskotron/taskotron.yaml` and
+set the following value::
+
+    resultsdb_server: http://localhost:5001/api/v1.0
+
+You might also need to adjust `reporting_enabled` and `report_to_resultsdb`,
+depending on your local settings.
 
-    $ ./init_db.sh
+## Running test suite
 
-Run the server
+You can run this test suite with the following command::
 
-    $ python runapp.py
+    $ py.test --functional testing/
diff --git a/conf/settings.py.example b/conf/settings.py.example
--- a/conf/settings.py.example
+++ b/conf/settings.py.example
@@ -1,13 +1,12 @@
-# while you can use this as a template, we recommend that you use the blockerbugs
-# cli to generate a config file
-SECRET_KEY = 'not-really-a-secret'
-SQLALCHEMY_DATABASE_URI = 'postgresql+psycopg2://dbuser:dbpassword@dbhost:dbport/dbname'
-FAS_ADMIN_GROUP = "magic-fas-group"
-FAS_USER = "magicuser@unicornsarereal.com"
-FAS_PASSWORD = "password"
-BUGZILLA_COOKIE = None
+# Copy this file to `conf/settings.py` to put it into effect. It overrides the values defined
+# in `resultsdb/config.py`.
+SECRET_KEY = 'replace-me-with-something-random'
+#SQLALCHEMY_DATABASE_URI = 'postgresql+psycopg2://dbuser:dbpassword@dbhost:dbport/dbname'
+SQLALCHEMY_DATABASE_URI = 'sqlite:////var/tmp/resultsdb_db.sqlite'
 FILE_LOGGING = False
-LOGFILR = '/var/log/resultsdb/resultsdb.log'
+LOGFILE = '/var/log/resultsdb/resultsdb.log'
 SYSLOG_LOGGING = False
 STREAM_LOGGING = True
-SHOW_DB_URI = False
+#SHOW_DB_URI = False
+RUN_HOST= '0.0.0.0'
+RUN_PORT = 5001
diff --git a/resultsdb/__init__.py b/resultsdb/__init__.py
--- a/resultsdb/__init__.py
+++ b/resultsdb/__init__.py
@@ -36,7 +36,7 @@
 
 # Flask App
 app = Flask(__name__)
-app.secret_key = 'not-really-a-secret'
+app.secret_key = 'replace-me-with-something-random'
 
 # make sure app behaves when behind a proxy
 app.wsgi_app = proxy.ReverseProxied(app.wsgi_app)
@@ -63,15 +63,15 @@
 flask.jsonify = jsonify_with_jsonp
 
 # Load default config, then override that with a config file
-if os.getenv('PROD') == 'true':
-    default_config_obj = 'resultsdb.config.ProductionConfig'
-    default_config_file = '/etc/resultsdb/settings.py'
+if os.getenv('DEV') == 'true':
+    default_config_obj = 'resultsdb.config.DevelopmentConfig'
+    default_config_file = os.getcwd() + '/conf/settings.py'
 elif os.getenv('TEST') == 'true':
     default_config_obj = 'resultsdb.config.TestingConfig'
     default_config_file = os.getcwd() + '/conf/settings.py'
 else:
-    default_config_obj = 'resultsdb.config.DevelopmentConfig'
-    default_config_file = os.getcwd() + '/conf/settings.py'
+    default_config_obj = 'resultsdb.config.ProductionConfig'
+    default_config_file = '/etc/resultsdb/settings.py'
 
 app.config.from_object(default_config_obj)
 
@@ -81,7 +81,7 @@
     app.config.from_pyfile(config_file)
 
 if app.config['PRODUCTION']:
-    if app.secret_key == 'not-really-a-secret':
+    if app.secret_key == 'replace-me-with-something-random':
         raise Warning("You need to change the app.secret_key value for production")
 
 # setup logging
@@ -146,4 +146,3 @@
 
 from resultsdb.controllers.api_v1 import api as api_v1
 app.register_blueprint(api_v1, url_prefix = "/api")
-
diff --git a/resultsdb/config.py b/resultsdb/config.py
--- a/resultsdb/config.py
+++ b/resultsdb/config.py
@@ -28,8 +28,8 @@
     SYSLOG_LOGGING = False
     STREAM_LOGGING = True
 
-    HOST = None
-    PORT = None
+    HOST = '0.0.0.0'
+    PORT = 5001
 
     PRODUCTION = False
 
@@ -43,9 +43,8 @@
 
 class DevelopmentConfig(Config):
     TRAP_BAD_REQUEST_ERRORS = True
-    SQLALCHEMY_DATABASE_URI = 'sqlite:////tmp/resultsdb.db'
-    HOST = '0.0.0.0'
-    PORT = 5000
+    SQLALCHEMY_DATABASE_URI = 'sqlite:////var/tmp/resultsdb_db.sqlite'
+    SHOW_DB_URI = True
 
 
 class TestingConfig(Config):
diff --git a/testing/conftest.py b/testing/conftest.py
--- a/testing/conftest.py
+++ b/testing/conftest.py
@@ -1,3 +1,5 @@
+import os
+
 def pytest_addoption(parser):
     """
     Add an option to the py.test parser to detect when the functional tests
@@ -24,4 +26,4 @@
     """Called after command line options have been parsed and all plugins and
     initial conftest files been loaded."""
 
-    pass
+    os.environ['TEST'] = 'true'

