Dev Diary 0003 - Week of October 16th

This week was all about adjusting the application to handle a special user role. In general the application is your standard multi-tenant application except we have one type of user that needs to operate across tenants but isn’t a super user. They are restricted to a subset of tenants (unlike a super user) but also have elevated permissions across those tenants. So I had to scaffold up some tables to manage the user to tenant links and now I’m adjusting the back-end services to respect the permissions. I also created a handful of tests to check various permission cases. I’m on vacation next week but when I return I’ll start the changes needed on the front end.

Side Project - Lillihub

I’ve started cleaning up the code and adding in documentation. Right now the project is a single1 JavaScript file under 2500 lines (and under 128KB2). That includes the everything. The HTML, CSS, a touch of frontend JS and all the backend JS for the webserver running on Deno. There is no build step and there are no frameworks. And I really want to keep it that way. The problem is that adding in documentation is taking up precious bytes. So I’m refactoring and keeping things DRY in an effort to keep things slim.

Why? I’m an odd duck developer. Maybe its because I’ve worked solo all my career but in order to push myself and become better I tend to place constraints on myself. It forces me to grow and look at problems from different angles. I don’t do this at work but my side projects are all fair game to my crazy ideas.

I didn’t want Lillihub to be a chore to maintain. Which inevitably happens when you add a metric ton of dependencies. I wanted Lillihub to not only work without JavaScript… but be a delight to use without JavaScript. Hint to anyone out there who wants to do that: Turn off JavaScript on your browser when you are developing. It’ll make the pain points pretty obvious.

I’m still aiming to release the app for Micro.blog users and make the source code public in November 🫣 which is a little nerve wracking.

Side Project - Blog Redesign

As I mentioned last week. The clean simple design I created was getting on my nerves. So…. what to do…. Apparently make a delightful little theme inspired by Super MarioKart. I spent many delightful hours in my youth perfecting my runs through Rainbow Road for the sole purpose of beating my siblings. I spent an hour making the delightful border along my blog content. Worth it.

What I learned

The powers of border-image-slice in CSS in conjunction with image-rendering: pixelated;. It really helps make retro feeling borders.

What I’m thinking

That streaming HTML is super cool. Why haven’t I known about it before.

Why am I getting broken pipe and Http - response already completed errors from Lillihub? My search-engine-fu is failing me here.

PostScript

1 : Okay you caught me. I am using two external JS files on the front end. One is a markdown editor and one is an image compressor library.

2 : The KB restriction is from the Deno Playground. One file and a max of 128KB. I wasn’t kidding when I said I wanted to keep things small and the Deno Playground Editor is such a delight to use that I’m willing to play by those constraints 😆.

Dispatches from the fleet

What passing ships signaled back

Unfurl the messages

Pen yer reply

Scratch a message on the parchment and cast it off. After you sign in you may need to re-open this modal.