Ngt0hindqwxfd7ayvdvi
SkillsCast

Building web application with servant, lucid, and digestive-functors

6th October 2016 in London at CodeNode

There are 30 other SkillsCasts available from Haskell eXchange 2016

Coming Soon

Servant is a library for writing routing tables on the type level. It is commonly used for micro-services and for delivering json data to single-page apps, but it is possible to use it for delivering web pages and forms, and build a low- or no-js web application with it. Aula [0, 1] is such a web application. It is based on servant for request processing, lucid (a sibling package of blaze) for html content rendering, and digestive-functors for web form processing. Sticking these parts together proved both non-trivial and very rewarding. Benefits are clear separation between application logic, html rendering, form data validation, and tedious details like authentication or CSRF token handling. Aula is AGPL. We plan to release parts of the code as general-purpose libraries. In this talk, you will explore pieces of code and see how this feels to the application developer.

YOU MAY ALSO LIKE:

Thanks to our sponsors

Building web application with servant, lucid, and digestive-functors

Andor Penzes

Andor is a Haskell developer and enthusiast, interested in theoretical computer science, he has industrial experience with functional and object oriented programming, QA engineering, learns dependently typed programming and playing the hangdrum. Andor has recently revived his interest in compiler construction.

Matthias Fischmann

Matthias is a software developer and consultant. Exclusive focus on Haskell since 2015.

SkillsCast

Coming Soon

Servant is a library for writing routing tables on the type level. It is commonly used for micro-services and for delivering json data to single-page apps, but it is possible to use it for delivering web pages and forms, and build a low- or no-js web application with it. Aula [0, 1] is such a web application. It is based on servant for request processing, lucid (a sibling package of blaze) for html content rendering, and digestive-functors for web form processing. Sticking these parts together proved both non-trivial and very rewarding. Benefits are clear separation between application logic, html rendering, form data validation, and tedious details like authentication or CSRF token handling. Aula is AGPL. We plan to release parts of the code as general-purpose libraries. In this talk, you will explore pieces of code and see how this feels to the application developer.

YOU MAY ALSO LIKE:

Thanks to our sponsors

About the Speakers

Building web application with servant, lucid, and digestive-functors

Andor Penzes

Andor is a Haskell developer and enthusiast, interested in theoretical computer science, he has industrial experience with functional and object oriented programming, QA engineering, learns dependently typed programming and playing the hangdrum. Andor has recently revived his interest in compiler construction.

Matthias Fischmann

Matthias is a software developer and consultant. Exclusive focus on Haskell since 2015.

Photos