Showcase of a lightweight web app written in Haskell
Haskell JavaScript
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
.gitignore
API.md
Database.hs
LICENSE
Main.hs
README.md
Setup.hs
haskell-todo.js
index.html
screenshot.png
todo-example.cabal

README.md

todo-example in Haskell

todo-example is a showcase of a lightweight web application written in Haskell.

A simple todo list server with a REST API using our own frameworks Welshy and TX, with a simple UI displaying the interaction with the API.

Why?

todo-example was inspired and resulted from parts of a project done in the lecture 'Industrial Haskell' at Vienna UT by Michael Schröder, Harald Steinlechner, and Jürgen Cito.

Following our presentation of the project, feedback from fellow students was something along the lines of 'Wow, you can write web applications in Haskell? I thought it's only for compilers and other academic stuff'. Our aim is to change this perception of Haskell and showcase a simple working web applicatiion

Screenshot/Usage

Below you can see a screenshot of what it looks like. You can create new lists of todo items which you can share with the 'Invite-URL'. Everyone who has the link can then add, edit and delete items from the list - updates are made available to everyone in near realtime.

haskell todo-example Screenshot

Frameworks

Welshy

A Haskell web framework heavily influenced by the excellent Scotty, which was in turn influenced by Ruby's Sinatra.

Welshy strives to make it easier to do error handling without overly complicating the control flow.

Welshy is on Hackage

TX

TX provides persistent transaction on top of STM.

TX on Hackage

Slides

todo-example was presented as a lightning talk at the New York Haskell User Group. The slides are online on SpeakerDeck.