Introducing Metronical The Metron Library's Home on GitHub

by Michael Szul on

No ads, no tracking, and no data collection. Enjoy this article? Buy us a ☕.

A while back I mentioned how I was rewriting the metron library from the ground up using TypeScript. That rewrite has been largely a success--although it's still in a beta state with lots of nights and weekends going into it. The library and framework has grown beyond a hobby and beyond the convenience library that it once was, so I decided to give it a new home.

At first I considered simply moving the library to the codepunk GitHub account, but I wanted to keep the codepunk repo exclusive to our lab work, and metron is older than codepunk, and hasn't really been a hard topic of this site. Also, I expect a lot of experiments to be in the codepunk repo, and doing so would pollute the searchability and continuity of metron--too many other disconnected items.

Unfortunately, metron as a user/org name was already taken--so was metronic. I settled for metronical, following the English usage of "ical" as an ending for a noun to make it an adjective.

Spinning metron out as an org made sense because it's being used by more than just me, and hopefully will gain more contributions from others. The library itself dates back to the days of Windows XP and Window 7 sidebar gadgets, and was originally a convenience library for places where jQuery couldn't be used, or where you needed various string and/or array extensions. Since then, it has expanded to include many more convenience methods, a full lightweight, frontend framework, and has been rewritten to take advantage of TypeScript--hence the repo being named metron.v2.

The original, deprecated metron library is still available on my own GitHub account. I probably won't move that, since it is no longer being actively developed. A lot of this early work was done with constant communication between myself and Bill, as he worked for Peirce College at the time, and I was consulting with them. We've been consistent influences on each other when it comes to JavaScript and TypeScript. As such, he's attached to metronical as a contributor.

Metron is in production on several web applications. Ashish Pathak worked with me on one implementation--using the convenience methods and working with the patterns--and I've received some good feedback from him. He's listed as a contributor too.

What does this all mean? It means that metron more reflects the community project that it is rather than a personal project. I hope it also encourages usage and pull requests. I'm currently working on documentation and tools to makes things easier and better. We'll see what the future holds.