Tanzawa in 2022

It's been one year since I first started using Tanzawa in public as I blogged about my daily development progress.

This post started as a scratchpad for me to figure my priorities when developing Tanzawa as it stalled for a couple of months in early November. I had intended to publish it and use it to guide me through the next couple of months.Β 

But writing down even a partial list of priorities energized me and gave me a sense of focus. That focus allowed me to ship some big new features like plugins, start on a refactor, and made some good progress on theme support.
As such I'm now re-purposing and rewriting this post to solidify my thinking for the next few months (or more) of development and lay some groundwork for Tanzawa in 2022.


Theming is my top priority at the moment. Theming while a core feature for someone to make a blog feel like home, is probably not something I'll use that much as I quite like my current color scheme. Basic color scheme changing is in progress in PR #150. It'd be great if a later PR could also allow custom layout as well.

On second thought, perhaps "theming" is a misnomer. Perhaps it's actually two independent features: color scheme selection and layout. This way you could mix and match between them?

Strava Plugin

As part of my 2022 goals I'd like to run 100 times and I'd like to track this on my website. I could do it manually, but I'd really like to own that data in my own database so I can do some custom visualizations of my runs.

There's three parts to this integration:
  • An admin interface to authenticate Tanzawa with Strava.
  • Management command to download and store the latest runs.
  • A public facing runs page.

Eventually I'll need a way to automatically run on the management command without sshing into the server to setup a cronjob, but that'll be fine for now.

Runs page is a feature that I've been wanting since the outset of Tanzawa (similar to trips). At the outset I planned to use Runkeeper, but their lack of API made me switch to Strava.

Setup & Deployment

I still haven't documented how to deploy Tanzawa for production. It's part I don't like faffing with servers and part "works for me".Β  The problem is, no matter how great the experience is blogging with Tanzawa, if users can't install or set it up, it doesn't matter.

As I'd like to get more people using Tanzawa, not just trying it out locally, I've got to make it easier to install. It will likely be an automated setup of a droplet on DigitalOcean. At least for starters.

Continue the Refactor

When first building out Tanzawa I used Django Model Forms because they're quick to prototype with. And my micropub endpoint mostly transforms data to fit these forms and runs them as it was easiest. But this is more brittle and intertwined than I'd like.

So I plan to continue to refactor "as time and energy allow".

Bonus Ideas Later in the Year

Propaganda Website
As part of my mission to get people using Tanzawa besides myself, I'd like to setup a dedicated propaganda website. It doesn't need to be powered by Tanzawa itself (though that would be neat). I'm picturing a site that has your standard marketing bog introducing Tanzawa, directs people to GitHub, and so forth. But as it's not just a marketing website, it should contain some pages dedicated to the cause of the open web, Punk rock style.

Native Syndication

I still manually syndicate my posts to Twitter. I'd like to remove that burden and allow Tanzawa to automatically post to Twitter and other social networks. There's been some good discussion about this on Issue #84.

Year In Review

A "year in review" page generator plugin that will use your own blog to craft yearly reviews. It would show you some fun statistics like most interacted with posts (top 3?), a map of your checkins, stats about the number / frequency / type of posts, word count (?). It would be fun to add some hooks to allow plugins to contribute to the statistics as well.
  • Let’s go, 2022!

  • like
  • @jamesvandyne I’d love to see this have a more official installation option. I recall the last time I played around with it I just couldn’t get it to work and login properly (don’t remember exactly what the issue was now). Like you mentioned anything that doesn’t require messing with servers is a huge plus.