Implementation of "todo-backed"
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.

SWI-Prolog implementation of the todo-backend API

These files implement Todo-Backend, a shared example to showcase backend tech stacks in SWI-Prolog version 7. The implementation uses the Prolog database with file backup to provide persistency.


  • allows for loading and starting the server.
  • As, but supports Unix service interaction. Edit the #! line and run ./ --help.
  • provides the webserver intialization.
  • is the real server. It is extensively documented to help Prolog novices understand the code.


  • The implementation relies heavily on SWI-Prolog's web server infrastructure. I have also used SWI-Prolog version 7 extensions that are intended to make Prolog code look less alien by providing dicts and strings.

  • Requires SWI-Prolog >= 7.1.21