Album and page styles.
Server-side models and migrations.
API endpoints for fetching models.
Client-side models.
Client-side routes.
Navigation logic.
Use embedded models instead of referencing by ID.
Blat some photo URLs to the page.
Create and use DisplayPhoto component.
Add page transitions.
Simplify photo positioning by using nth-child.
Apply classnames to pages to load custom layouts.
Skeleton for edit page.
Support adding a page to an existing album.
Pull in Bootstrap (the simplest way).
Create a modal for editing a photo.
Consolidate EditPhoto and DisplayPhoto components, add photo shape support.
Displaying and editing custom quote text.
Roll back changes when canceling.
Simplify classname bindings.