Rebuilding Basant


published 2023-01-01 16:24

updated 2023-05-14 14:27

Basant my static site builder (SSG), as previously mentioned, is a total mess. I forked Chisai to start work on my SSG since it was written by my friend Thomasorus, was written in Python and I didn't really care about starting from scratch at the time. Chisai was a very great bouncing off point because it came with all the semantic HTML templating stuff that I (still) have no idea about.

Now, a different story emerges. As I'm looking to implement WebMentions, IndieAuth, and generally try and make Kitaab cleaner / more functional / the all in one home for my web presence, there's a lot of work that needs to be done. Where there's a lot of work to be done, I've found a plan to be helpful. Here's a brief outline.

== Website related tasks | project:website -COMPLETED ==

  • [ ] mobile view #eb259420
  • [ ] webring #f14c9740
  • [ ] backlinks #f4439020
  • [ ] art posts #730985d0
  • [ ] handle multiple images in a nice way #20ff5441
  • [ ] broken https links when using [[]] wikilink style #361646b9
  • [ ] IndieAuth #01405b56
  • [ ] Webmentions #10d54b97
  • [ ] h1 headings for = surrounded text #7b2b36df
  • [ ] write some tests bruh #72ff19e4
  • [ ] sort by updated or sort by new #fece2e56
  • [ ] papas coaching website #305fae0b
  • [ ] footer #ef15e120

I'd start by writing some tests to ensure I don't lose any functionality in this process. Once I've secured a good harness, I can move on to a ~clean re-write. I want type annotations in the code. I want posts views to be configurable by last update, as well as most recent new post. I want a JSONResume. I want an RSS Feed. I want an accessible, fast website. I want a robust, extensible system for further incorporating elements of the IndieWeb protocol, and others I may come across. I want integrated bookmarks read from my shaarli instance. I want annotations from my wallabag instance and kobo. I want to clean up Kitaab such that all the notes are in a standard format, and then be able to use various other tools instead of being trapped by my current setup.

This is a fairly large undertaking. Rewriting Basant would only be the first phase, and I'm hoping it kicks my butt into gear for the rest.

I find I often struggle with motivation. Not only in the sense of struggling to do things, but figuring out the reason why I want to do things I am doing. Here too, it's easy for me to mumble about how it's currently good enough, or working on this wouldn't help challenge any of the big problems we currently face as contemporary humans.