The Database
You are going to need a database. Relativity Server, the middle tier of Data Abstract for Cocoa, can use almost any database that has an ADO.NET driver (which is almost every popular SQL-based database).
To make things as simple as possible for this application, you will use SQLite. SQLite is famous for its great zero-configuration feature, which means no complex setup or administration is needed.
Pre-Configured Database
You can download a copy of the database with all the initial data needed here.
The Database Schema
The database consists of just three tables.
Users Table
CREATE TABLE "Users" (
"Id" integer NOT NULL PRIMARY KEY AUTOINCREMENT,
"Name" text(20,0) NOT NULL,
"Password" text(20,0) NOT NULL);
Priorities Table
CREATE TABLE "Priorities" (
"Id" integer NOT NULL PRIMARY KEY AUTOINCREMENT,
"Name" text(20,0) NOT NULL);
Tasks Table
CREATE TABLE "Tasks" (
"Id" integer NOT NULL PRIMARY KEY AUTOINCREMENT,
"Done" integer NOT NULL DEFAULT 0,
"DueDate" DATETIME,
"Priority" integer NOT NULL DEFAULT 0,
"Task" text(50,0),
"Details" text(255,0),
"User" integer NOT NULL);
Initial Data
The database will need some initial seed data.
Two users
INSERT INTO "Users" VALUES (1, 'Alex', '111');
INSERT INTO "Users" VALUES (2, 'Daniel', '222');
Three priorities#\
INSERT INTO "Priorities" VALUES (1, 'Low');
INSERT INTO "Priorities" VALUES (2, 'Normal');
INSERT INTO "Priorities" VALUES (3, 'High');
One Task
INSERT INTO "Tasks" VALUES (1, 0, '2014-08-01 00:00:00.0000', 1,
'Learn DA', 'Learn Data Abstract', 2);