My approach to building Tuff, my static site generator that I began working on last November, was to jump in as quickly as possible by publishing my personal website publicly very early in the development process. Doing so forced me to make rapid improvements and to focus on the most important features.
By spending 5am to 7am most weekday mornings I was able to publish my entire website publicly within 14 days of starting to code and I wrote a short blurb on how Tuff works within 30. Considering that my personal site has a portfolio, podcast, and thousands of blog posts I was surprised by that timeline.
As a quick aside, this 5am to 7am time slot for coding personal projects did not appear on my typical day post from January 2021 because I wasn't doing it then. As I get older I find myself waking earlier and earlier. Rather than blow all of that time on YouTube (I love my YouTube) I decided, just a few weeks after that post, to begin working on personal projects instead. I've done a lot of programming, photography, and side hustle business during these early morning sessions over the last two years and I hope to continue. Waking early and being productive feels like a super power.
Development on Tuff has not stopped. I've been chipping away at improvements to this website, the efficiency of the build process, and adding the capability to build multiple websites. As you can see in the changelog, each release brings a few small improvements but they begin to add up over time.
One feature that I've missed the most since switching to Tuff for my personal website has been search, which I finished a first version of yesterday.
In very early January, just a month or so into development, I added a local command line search command to Tuff to help me find posts in my archive. It works pretty well and I continue to use this to help me find older posts. But I knew I needed to add on site search so that visitors to my site could do some basic searching. I wasn't sure how I was going to go about it statically. Should I build a client side search forcing the visitor of the site to download some large index? Should I use a third party tool? Should I do what many have done and push people to a search engine?
That is why I'm now calling Tuff a Static+ Site Generator. S+SG. Is this a thing? I don't know. Don't forget, in my original building Tuff post I mentioned that I never looked at other static site generators. And I still haven't. I'm oblivious to best practices.
As of today, I use Tuff to build three sites; this site you're reading now, a private local network website that showcases over 100,000 of our family photos by date, and a new static site for The Watercolor Gallery that I hope to finish before the end of the year. In addition to that I'd like to begin working on publishing Stripe Transfer, Stupid, and at least three other websites that I've yet to debut with it.
Tuff is now a tool I plan to use for the rest of my computing life (see also). I love it.