Material Design Lite

I'm going to use Material Design Lite. The reason is that it doesn't tie me to any specific UI framework, and still gives me the clean Material Design components.

Before adding any new UI components, I'm going to introduce MDL to the app to make use of the components available in that toolset.

UI Framework

I'm going to continue using pugjs as the UI templating library. Fortunately, because of pug we can create reusable components easily and include them on each page.

Landing page

I believe this is the most important lacking feature. A landing page is the first thing new users see and a good page is necessary to attract visitors and invite them to sign up.

Also, it is important to give a good overview of what the service is used for and a "call for action" which is a Signup button in this case.

Refactoring

Before creating the landing page I decided to add some way of allowing more descriptive names and a create page with input for that name, instead of taking it from the page URL.

After the refactoring we rely on the receipt IDs on DB instead of the name, so URLs are shorter and pretty standard.

What I learned from the feature list

Today's feature list was longer than could have been finished in one day. Unfortunately, that meant there wasn't enough boundary on the task at hand, and therefore a lot of "nice to have" features were implemented before reaching to the point that things are ready for the landing page.

Next time there will be two issues, so I don't have to deal with the disappointment of not crossing all the items in the checklist.