diff --git a/NOTICE.txt b/NOTICE.txt
index 5f2a7ce..a572ee5 100644
--- a/NOTICE.txt
+++ b/NOTICE.txt
@@ -1,5 +1,5 @@
 Apache Fineract CN Group
-Copyright [2017-2018] The Apache Software Foundation
+Copyright [2017-2019] The Apache Software Foundation
 
 This product includes software developed at
 The Apache Software Foundation (http://www.apache.org/).
\ No newline at end of file
diff --git a/component-test/src/main/java/org/apache/fineract/cn/group/SuiteTestEnvironment.java b/component-test/src/main/java/org/apache/fineract/cn/group/SuiteTestEnvironment.java
index 8cd3a8e..720e949 100644
--- a/component-test/src/main/java/org/apache/fineract/cn/group/SuiteTestEnvironment.java
+++ b/component-test/src/main/java/org/apache/fineract/cn/group/SuiteTestEnvironment.java
@@ -21,7 +21,7 @@
 import org.apache.fineract.cn.test.env.TestEnvironment;
 import org.apache.fineract.cn.test.fixture.TenantDataStoreContextTestRule;
 import org.apache.fineract.cn.test.fixture.cassandra.CassandraInitializer;
-import org.apache.fineract.cn.test.fixture.mariadb.MariaDBInitializer;
+import org.apache.fineract.cn.test.fixture.postgresql.PostgreSQLInitializer;
 import org.junit.ClassRule;
 import org.junit.rules.RuleChain;
 import org.junit.rules.TestRule;
@@ -32,14 +32,14 @@
 
     static final TestEnvironment testEnvironment = new TestEnvironment(APP_NAME);
     static final CassandraInitializer cassandraInitializer = new CassandraInitializer();
-    static final MariaDBInitializer mariaDBInitializer = new MariaDBInitializer();
+    static final PostgreSQLInitializer postgreSQLInitializer = new PostgreSQLInitializer();
     static final TenantDataStoreContextTestRule tenantDataStoreContext =
-            TenantDataStoreContextTestRule.forRandomTenantName(cassandraInitializer, mariaDBInitializer);
+            TenantDataStoreContextTestRule.forRandomTenantName(cassandraInitializer, postgreSQLInitializer);
 
     @ClassRule
     public static TestRule orderClassRules = RuleChain
             .outerRule(testEnvironment)
             .around(cassandraInitializer)
-            .around(mariaDBInitializer)
+            .around(postgreSQLInitializer)
             .around(tenantDataStoreContext);
 }
\ No newline at end of file
diff --git a/component-test/src/main/java/org/apache/fineract/cn/group/TestGroup.java b/component-test/src/main/java/org/apache/fineract/cn/group/TestGroup.java
index a78017a..4cd2ae8 100644
--- a/component-test/src/main/java/org/apache/fineract/cn/group/TestGroup.java
+++ b/component-test/src/main/java/org/apache/fineract/cn/group/TestGroup.java
@@ -43,7 +43,7 @@
 import org.apache.fineract.cn.test.env.TestEnvironment;
 import org.apache.fineract.cn.test.fixture.TenantDataStoreContextTestRule;
 import org.apache.fineract.cn.test.fixture.cassandra.CassandraInitializer;
-import org.apache.fineract.cn.test.fixture.mariadb.MariaDBInitializer;
+import org.apache.fineract.cn.test.fixture.postgresql.PostgreSQLInitializer;
 import org.apache.fineract.cn.test.listener.EnableEventRecording;
 import org.apache.fineract.cn.test.listener.EventRecorder;
 import org.junit.After;
diff --git a/component-test/src/main/java/org/apache/fineract/cn/group/TestGroupDefinition.java b/component-test/src/main/java/org/apache/fineract/cn/group/TestGroupDefinition.java
index 3a4b652..d7b4f48 100644
--- a/component-test/src/main/java/org/apache/fineract/cn/group/TestGroupDefinition.java
+++ b/component-test/src/main/java/org/apache/fineract/cn/group/TestGroupDefinition.java
@@ -28,7 +28,7 @@
 import org.apache.fineract.cn.test.env.TestEnvironment;
 import org.apache.fineract.cn.test.fixture.TenantDataStoreContextTestRule;
 import org.apache.fineract.cn.test.fixture.cassandra.CassandraInitializer;
-import org.apache.fineract.cn.test.fixture.mariadb.MariaDBInitializer;
+import org.apache.fineract.cn.test.fixture.postgresql.PostgreSQLInitializer;
 import org.apache.fineract.cn.test.listener.EnableEventRecording;
 import org.apache.fineract.cn.test.listener.EventRecorder;
 import org.junit.After;
diff --git a/service/build.gradle b/service/build.gradle
index 4090c17..296bcf1 100644
--- a/service/build.gradle
+++ b/service/build.gradle
@@ -55,7 +55,8 @@
             [group: 'org.apache.fineract.cn', name: 'lang', version: versions.frameworklang],
             [group: 'org.apache.fineract.cn', name: 'async', version: versions.frameworkasync],
             [group: 'org.apache.fineract.cn', name: 'cassandra', version: versions.frameworkcassandra],
-            [group: 'org.apache.fineract.cn', name: 'mariadb', version: versions.frameworkmariadb],
+            [group: 'org.apache.fineract.cn', name: 'postgresql', version: versions.frameworkmariadb],
+            [group: 'org.apache.fineract.cn', name: 'postgresql', version: '0.1.0-BUILD-SNAPSHOT'],
             [group: 'org.apache.fineract.cn', name: 'command', version: versions.frameworkcommand],
             [group: 'org.hibernate', name: 'hibernate-validator', version: versions.validator]
     )
diff --git a/service/src/main/java/org/apache/fineract/cn/group/GroupConfiguration.java b/service/src/main/java/org/apache/fineract/cn/group/GroupConfiguration.java
index f2f0642..3f16aa7 100644
--- a/service/src/main/java/org/apache/fineract/cn/group/GroupConfiguration.java
+++ b/service/src/main/java/org/apache/fineract/cn/group/GroupConfiguration.java
@@ -24,7 +24,7 @@
 import org.apache.fineract.cn.command.config.EnableCommandProcessing;
 import org.apache.fineract.cn.lang.config.EnableServiceException;
 import org.apache.fineract.cn.lang.config.EnableTenantContext;
-import org.apache.fineract.cn.mariadb.config.EnableMariaDB;
+import org.apache.fineract.cn.postgresql.config.EnablePostgreSQL;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
@@ -43,7 +43,7 @@
 @EnableAsync
 @EnableTenantContext
 @EnableCassandra
-@EnableMariaDB
+@EnablePostgreSQL
 @EnableCommandProcessing
 @EnableAnubis
 @EnableServiceException
diff --git a/service/src/main/java/org/apache/fineract/cn/group/internal/command/handler/MigrationAggregate.java b/service/src/main/java/org/apache/fineract/cn/group/internal/command/handler/MigrationAggregate.java
index 3ea23ff..e2b4262 100644
--- a/service/src/main/java/org/apache/fineract/cn/group/internal/command/handler/MigrationAggregate.java
+++ b/service/src/main/java/org/apache/fineract/cn/group/internal/command/handler/MigrationAggregate.java
@@ -25,7 +25,7 @@
 import org.apache.fineract.cn.command.annotation.Aggregate;
 import org.apache.fineract.cn.command.annotation.CommandHandler;
 import org.apache.fineract.cn.command.annotation.EventEmitter;
-import org.apache.fineract.cn.mariadb.domain.FlywayFactoryBean;
+import org.apache.fineract.cn.postgresql.domain.FlywayFactoryBean;
 import org.slf4j.Logger;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Qualifier;
diff --git a/service/src/main/java/org/apache/fineract/cn/group/internal/repository/GroupCommandEntity.java b/service/src/main/java/org/apache/fineract/cn/group/internal/repository/GroupCommandEntity.java
index 67c8286..41ff56c 100644
--- a/service/src/main/java/org/apache/fineract/cn/group/internal/repository/GroupCommandEntity.java
+++ b/service/src/main/java/org/apache/fineract/cn/group/internal/repository/GroupCommandEntity.java
@@ -29,7 +29,7 @@
 import javax.persistence.JoinColumn;
 import javax.persistence.ManyToOne;
 import javax.persistence.Table;
-import org.apache.fineract.cn.mariadb.util.LocalDateTimeConverter;
+import org.apache.fineract.cn.postgresql.util.LocalDateTimeConverter;
 
 @Entity
 @Table(name = "ptah_group_commands")
diff --git a/service/src/main/java/org/apache/fineract/cn/group/internal/repository/GroupDefinitionEntity.java b/service/src/main/java/org/apache/fineract/cn/group/internal/repository/GroupDefinitionEntity.java
index 5b4c856..bf8e8d8 100644
--- a/service/src/main/java/org/apache/fineract/cn/group/internal/repository/GroupDefinitionEntity.java
+++ b/service/src/main/java/org/apache/fineract/cn/group/internal/repository/GroupDefinitionEntity.java
@@ -26,7 +26,7 @@
 import javax.persistence.GenerationType;
 import javax.persistence.Id;
 import javax.persistence.Table;
-import org.apache.fineract.cn.mariadb.util.LocalDateTimeConverter;
+import org.apache.fineract.cn.postgresql.util.LocalDateTimeConverter;
 
 @Entity
 @Table(name = "ptah_group_definitions")
diff --git a/service/src/main/java/org/apache/fineract/cn/group/internal/repository/GroupEntity.java b/service/src/main/java/org/apache/fineract/cn/group/internal/repository/GroupEntity.java
index 10e8a57..658962b 100644
--- a/service/src/main/java/org/apache/fineract/cn/group/internal/repository/GroupEntity.java
+++ b/service/src/main/java/org/apache/fineract/cn/group/internal/repository/GroupEntity.java
@@ -30,7 +30,7 @@
 import javax.persistence.ManyToOne;
 import javax.persistence.OneToOne;
 import javax.persistence.Table;
-import org.apache.fineract.cn.mariadb.util.LocalDateTimeConverter;
+import org.apache.fineract.cn.postgresql.util.LocalDateTimeConverter;
 
 @Entity
 @Table(name = "ptah_groups")
diff --git a/service/src/main/java/org/apache/fineract/cn/group/internal/repository/MeetingEntity.java b/service/src/main/java/org/apache/fineract/cn/group/internal/repository/MeetingEntity.java
index dc9fef9..4788455 100644
--- a/service/src/main/java/org/apache/fineract/cn/group/internal/repository/MeetingEntity.java
+++ b/service/src/main/java/org/apache/fineract/cn/group/internal/repository/MeetingEntity.java
@@ -30,8 +30,8 @@
 import javax.persistence.JoinColumn;
 import javax.persistence.ManyToOne;
 import javax.persistence.Table;
-import org.apache.fineract.cn.mariadb.util.LocalDateConverter;
-import org.apache.fineract.cn.mariadb.util.LocalDateTimeConverter;
+import org.apache.fineract.cn.postgresql.util.LocalDateConverter;
+import org.apache.fineract.cn.postgresql.util.LocalDateTimeConverter;
 
 @Entity
 @Table(name = "ptah_meetings")
diff --git a/service/src/main/java/org/apache/fineract/cn/group/internal/repository/MeetingRepository.java b/service/src/main/java/org/apache/fineract/cn/group/internal/repository/MeetingRepository.java
index c094de0..b470945 100644
--- a/service/src/main/java/org/apache/fineract/cn/group/internal/repository/MeetingRepository.java
+++ b/service/src/main/java/org/apache/fineract/cn/group/internal/repository/MeetingRepository.java
@@ -22,7 +22,7 @@
 import java.util.List;
 import java.util.Optional;
 import javax.persistence.Convert;
-import org.apache.fineract.cn.mariadb.util.LocalDateConverter;
+import org.apache.fineract.cn.postgresql.util.LocalDateConverter;
 import org.springframework.data.jpa.repository.JpaRepository;
 import org.springframework.stereotype.Repository;
 
diff --git a/service/src/main/resources/application.yml b/service/src/main/resources/application.yml
index f9b2ce0..e95b85a 100644
--- a/service/src/main/resources/application.yml
+++ b/service/src/main/resources/application.yml
@@ -40,6 +40,11 @@
       enabled: false
     config:
       enabled: false
+  datasource:
+    driver-class-name: org.postgresql.Driver
+    url: jdbc:postgresql://localhost:5432/playground
+    username: postgres
+    password: postgres
 
 eureka:
   client:
@@ -59,13 +64,13 @@
     write: LOCAL_QUORUM
     delete: LOCAL_QUORUM
 
-mariadb:
-  driverClass: org.mariadb.jdbc.Driver
+postgresql:
+  driverClass: org.postgresql.Driver
   database: seshat
   host: localhost
-  port: 3306
-  user: root
-  password: mysql
+  port: 5432
+  user: postgres
+  password: postgres
 
 bonecp:
   idleMaxAgeInMinutes: 240
diff --git a/service/src/main/resources/db/migrations/mariadb/V1__initial_setup.sql b/service/src/main/resources/db/migrations/postgresql/V1__initial_setup.sql
similarity index 92%
rename from service/src/main/resources/db/migrations/mariadb/V1__initial_setup.sql
rename to service/src/main/resources/db/migrations/postgresql/V1__initial_setup.sql
index 4460330..e004b01 100644
--- a/service/src/main/resources/db/migrations/mariadb/V1__initial_setup.sql
+++ b/service/src/main/resources/db/migrations/postgresql/V1__initial_setup.sql
@@ -18,7 +18,7 @@
 --
 
 CREATE TABLE ptah_addresses (
-  id BIGINT NOT NULL AUTO_INCREMENT,
+  id BIGSERIAL NOT NULL,
   street       VARCHAR(256) NOT NULL,
   city         VARCHAR(256) NOT NULL,
   postal_code  VARCHAR(32) NULL,
@@ -29,7 +29,7 @@
 );
 
 CREATE TABLE ptah_group_definitions (
-  id                 BIGINT        NOT NULL AUTO_INCREMENT,
+  id                 BIGSERIAL     NOT NULL,
   identifier         VARCHAR(32)   NOT NULL,
   description        VARCHAR(2048) NULL,
   minimal_size       INTEGER       NOT NULL,
@@ -46,7 +46,7 @@
 );
 
 CREATE TABLE ptah_groups (
-  id                  BIGINT        NOT NULL AUTO_INCREMENT,
+  id                  BIGSERIAL     NOT NULL,
   identifier          VARCHAR(32)   NOT NULL,
   group_definition_id BIGINT        NOT NULL,
   a_name              VARCHAR(256)  NOT NULL,
@@ -69,7 +69,7 @@
 );
 
 CREATE TABLE ptah_group_commands (
-  id         BIGINT       NOT NULL AUTO_INCREMENT,
+  id         BIGSERIAL    NOT NULL,
   group_id   BIGINT       NOT NULL,
   a_action   VARCHAR(32)  NOT NULL,
   note       VARCHAR(256) NOT NULL,
@@ -80,7 +80,7 @@
 );
 
 CREATE TABLE ptah_meetings (
-  id               BIGINT       NOT NULL AUTO_INCREMENT,
+  id               BIGSERIAL    NOT NULL,
   group_id         BIGINT       NOT NULL,
   meeting_sequence BIGINT       NOT NULL,
   current_cycle    BIGINT       NOT NULL,
@@ -94,7 +94,7 @@
 );
 
 CREATE TABLE ptah_attendees (
-  id                  BIGINT       NOT NULL AUTO_INCREMENT,
+  id                  BIGSERIAL    NOT NULL,
   meeting_id          BIGINT       NOT NULL,
   customer_identifier VARCHAR(32)  NOT NULL,
   a_status            VARCHAR(256) NOT NULL,
diff --git a/shared.gradle b/shared.gradle
index 160a2f3..b3b7253 100644
--- a/shared.gradle
+++ b/shared.gradle
@@ -61,7 +61,8 @@
 
 dependencies {
     compile(
-            [group: 'com.google.code.findbugs', name: 'jsr305']
+            [group: 'com.google.code.findbugs', name: 'jsr305'],
+            [group: 'org.apache.fineract.cn', name: 'postgresql', version: '0.1.0-BUILD-SNAPSHOT']
     )
 
     testCompile(
