Colophon.
The site
There is no build step. No bundler, no framework, no package to install, nothing served from someone else’s CDN. Every page is a file you could open by double-clicking it.
That was a decision, not laziness. A photography site should still work in ten years, and the surest way to manage that is to have nothing in it that needs maintaining. The pages are hand-written HTML. One stylesheet. Two small scripts — one that draws the pages from a data file, one that runs the nav and the lightbox. It’s hosted on GitHub Pages, which serves the files and does nothing else to them.
The only generated part is the chrome. The header, the nav, the footer and
every <head> live once in a script that writes them into
every page, because keeping four copies of a nav in sync by hand is how a nav
ends up in four different states.
Type
Three faces, each doing one job. Recoleta sets the headings — decorative but not loud, which was the whole brief. Geist sets everything else; it’s a variable font, so weight is a dial rather than another file to ship. Geist Mono sets the wordmark and nothing else.
Sizes come off a ladder rather than getting picked per element. To make something bigger it moves a step. It keeps the pages looking related to each other without anyone having to remember what they did last time.
Light and dark
Three states, in the top bar and in the menu on a phone. Light is what you get if you’ve never touched it. Dark is dark. Auto works out sunrise and sunset from the date and your own clock and follows them, which means the site goes dark in the evening wherever you are, without asking your browser or anyone else.
How a collection gets here
Photos go in a folder. Next to them goes a text file with the name of the thing on the first line, the date on the second, and then whatever I wrote while it was happening. Filenames on their own line are pictures; everything else is talking.
Committing that folder is the whole publish step. A job resizes the images, transcodes anything that came off a phone as video, reads the dimensions straight out of the files so nothing shifts while the page loads, rebuilds the galleries and the journal, and pushes. It works from a laptop and it works from the GitHub app on a phone in a parking lot, which is usually where it actually happens.
Using these photos
Personal use is free. Take any frame on this site — the download button in the lightbox gives you the full file. Set it as a wallpaper, print it and put it on a wall, send it to someone. You don’t need to ask and you don’t need to credit me, though it’s nice when people do.
Anything beyond that — commercial use, publication, anything where the photograph is doing a job for a business — email me first at hello@heartslibrary.com. I’m not precious about it and the answer is usually yes. I’d just like to know where they end up.
If a picture has a person in it and that person is you and you’d rather it weren’t here, email me and it comes down. No explanation needed.