SQLite implementation of TodoList
Latest commit b234986 Jan 6, 2017 @tfrank64 tfrank64 committed with rfdickerson Manifest updates (#16)
* lots of little changes

* small readme update
Failed to load latest commit information.
Images Updating readme with documented images (#7) Aug 8, 2016
Sources Manifest updates (#16) Jan 6, 2017
Tests Removed dependencies and MySQL references. Oct 11, 2016
LICENSE Initial commit for boilerplate Jun 28, 2016
README.md Manifest updates (#16) Jan 6, 2017
schema.sql Check if table already exists Jul 29, 2016


Kitura Todo List SQLite

Build Status Swift 3.0.2

Todo backend with SQLite3

Quick start for developing locally:

  1. Install the Swift 3 toolchain or Xcode 8

  2. Clone the boilerplate:

    git clone https://github.com/IBM-Swift/todolist-sqlite

  3. Create a file database from the schema:

    sqlite3 todolist.sqlite < schema.sql

  4. Run Swift Build

    • macOS: swift build
    • Linux: swift build -Xcc -fblocks
  5. Run the tests

    swift test

Using Docker Locally

  1. Install Docker on your operating system

  2. Build the Docker image:

    docker build -t todolist-sqlite .

  3. Run the web server:

    docker run -p 8090:8090 -d todolist-sqlite

Deploying Docker to IBM Bluemix Container

  1. Download and install the Bluemix CLI and CF CLI:

  2. Install the IBM Containers plugin for CF:

    Directions are here

    $ bluemix plugin install IBM-Containers -r Bluemix
    $ bx api https://api.ng.bluemix.net
    $ bx login 
    $ cf ic login

    Note the namespace you see:

    Authenticating with the IBM Containers registry host registry.ng.bluemix.net...
    You are authenticated with the IBM Containers registry.
    Your organization's private Bluemix registry: registry.ng.bluemix.net/<your namespace>
  3. Build a Docker Image

    Build the image if you haven't already.

    $ docker build -t todolist-sqlite . 
  4. Tag the Docker image:

    $ docker tag todolist-sqlite registry.ng.bluemix.net/<your namespace>/todolist-sqlite
  5. Push the Docker image:

    $ docker push registry.ng.bluemix.net/<your namespace>/todolist-sqlite
  6. Run the image in Bluemix:

    cf ic group create --anti --auto -m 128 --name todo-sqlite -p 8090 -n <hostname you want> -d mybluemix.net registry.ng.bluemix.net/<your namespace>/todolist-sqlite


Copyright 2016 IBM

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at


Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.