A refresh for logik-matchbook

Hello wonderful people! A few bits and bobs of info about https://logik-matchbook.org

Recently the site was unreliable for a few days due to caches getting full. There was also a long-known issue that the shebang line of INSTALL.command was no longer correct on macOS. And - in general - the site could use a fresh coat of paint.

Happy to share the following news with you all:

A new co-steward

Since Ivar passed, I didn’t really have a co-pilot with running the website. The system was robust, but it was all converging on me “paying attention”. Starting this May, the honorable @philm has been nominated the new “first officer” custodian of the website. This means that he is getting access to the server and the source code of logik-matchbook and an introduction on how to maintain it should things go wrong. A kind request that if you see the site being down or not doing what you expect, you contact either me or Phil (preferably both of us). I know a few of you have emailed Andy who relayed your questions to me via forwarded email - and productive threads and fixes have then emerged. Please contact us (myself and Phil) from now on. So, welcome @philm !

And his first fix is already in - the shebang line of the shader installer on macOS has been fixed.

A new server

All components of the website, from the VM operating system, to Docker to the runtime version to the Rails version and all the way down have been upgraded to reasonably recent versions (it was not possible, for example, to run the website locally for development without doing these updates first). It is also running on a newer, cheaper (and more powerful) machine than it used to. The wonders of progress!

Improved delivery

The site was using AWS hosting and CloudFront for CDN - which is how we could keep the delivery to you all reasonably fast - even in places like Australia - and the costs low. CloudFront didn’t want to make friends with our new hosting setup, so we are now serving through CloudFlare - the newer, more modern CDN that a huge portion of the Web relies on.

Thanks to the fact that the site was built to be CDN-delivered from the start, we are getting formidable cache hit rates - meaning that your shader downloads are going to work just as good as they used to, if not better. The way we invalidate caches when new shaders are uploaded has also been improved:

Everything has been switched yesterday and is running well.

Improved error and uptime monitoring

Sadly, there was no good monitoring in place which meant that with the site being down for a few days I would not even know about it. I’ve now added uptime tracking and error reporting using Appsignal, who are my provider of choice since my WeTransfer days. It was not used on logik-matchbook because, believe it or not, the site got built in 2013 - 12 years ago! Now it is firmly in place and I should be able to see if anything goes awry.

Feature requests

If you feel like the site could do something that it does not do now - feel free to make suggestions. When Ivar was still with us, he was pretty much the only one making feature requests, and with his passing there was no feedback at all. But that doesn’t mean we can’t make things a notch better.

API

Few know this, but you can build automations in your Flame scripts / facility scripts using the JSON API that the site provides. The endpoint you start at is https://logik-matchbook.org/api/v0/shaders.json and you can crawl from there, the entire taxonomy of the stored shaders is exposed.

Integration with logik-portal and other logik efforts

Despite my best intentions I have not been able to get a constructive conversation going about integrating logik-matchbook and logik-portal. I hope this situation will change, but the ball is not in my court on this. If you feel this could be better - you know who to talk to. Maybe @andymilkis / @randy could help me with persuasion, but on my own I have clearly failed.

Why is logik-matchbook not open-source?

The quality of the code is good, and I would have no issues at all making it open-source. However, there is a proprietary component used in the website which can’t be OSS-licensed and should not be made available to the general public. I am only feeling comfortable giving access to people who can co-admin the server with me, and who are OK with Docker, programming, development practices and so forth - all the while respecting the style of the software as it is constructed now.

Using that key component is a design choice that I have made back in the day, and it is the reason why I couldn’t just “throw it on Github” and let everyone contribute. This will stay as is for the moment.

Thank you for your continued support, and onwards!

P.S. Please remember that logik-matchbook is a community service provided at no cost, and behave accordingly :folded_hands:

39 Likes

Thank you @julik and @philm!!! :clap:t2::clap:t2::clap:t2::clap:t2:

1 Like

Happy Star Trek GIF

1 Like

@julik
I’m honored to be invited aboard captain.
:heart:

12 Likes

denzel washington GIF

Game Show Host GIF by ABC Network

@julik - it’s very encouraging to see that the new alert systems are functional, and detected the recent anomaly: your silent fix is working perfectly!
100% functional.
good skills that man!

1 Like