We’ll identify the different use cases for our site and then start implementing the functionality needed to support each case. Let’s go over a list of actions we’d like our site’s users to be able to perform. Each of these use cases will constitute a particular workflow that we can complete independent of others.

Task A: Account Registration

For a user to put content on the site, she needs to have an account. To facilitate this, we need a registration form to collect some user details, such as a username and a password. Then we need to validate those and create a database entry for the user.

Task B: Login and Logout

Once a user creates an account, she should be able to log in using the credentials provided. We need to display ...

Get Web Development with Clojure, 2nd Edition now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.