Every Sealious application has an `App.ConfigManager` interface through which you can configure settings available throughout all the various components of your application. It comes with some sane defaults.
### Changing the app settings
To run the app with specific settings, use an argument to `app.run` method:
```
const myApp = new Sealious.App();
myApp.run({http: {port_number: 8070}});
```
Alternatively, you can use the `ConfigManager.set` method - which is especially useful when you want to use the dot notation to change just a single value:
If you're creating your own Sealious module and want to make it globally configurable, use the `.setDefault` to set the default value for your setting.
NOTE: Sometimes it's better to just parametrize your module so it can be used multiple times with different configuration. ConfigManager is only useful for app-wide configurations.
```
app.setDefault("my-module", {port_number: 8080});
```
You can also use dot notation when setting single field values:
```
app.setDefault("my-module.port_number", 8080);
```
+## Data storage
+
+Sealious uses PostgreSQL as its datastore, with [Sequelize](http://docs.sequelizejs.com/) as its basic ORM, and builds a layer of abstraction around it.
+
+### Usage
+
+Once the app is started, to run a raw query, use
+
+```js
+myApp.query("SELECT 1+1 AS result").then(/*callback*/)
+```
+
+More advanced model-related topics are part of "Collections" specification.
+
+### Configuration
+
+There are a few things that need to be configured in order to tell the Datastore how to connect to the database. The gist of it is:
+
+```
+{
+ "db": {
+ "host": "localhost",
+ "port": 5432,
+ "username": "postgres",
+ "password": "itsasecredtoeveryone"
+ }
+}
+```
+
+To change the connection settings, use ConfigManager.