Today I released two libraries on GitHub that will ultimately power projectwallace.com! Both libraries are brand new and take part in replacing a slow PHP API that times out on a lot of CSS files. Because that’s such a big and important part of what Project Wallace is, I decided to make the open source. That way our fantastic community will get a chance to contribute to the Project.
This project can be used to get a little more powers with arrays. I often found myself writing functions for sorting, making unique lists and getting the first and last item from a list. This repository takes care of those issues.
See the repository on GitHub: css-collection
Here’s the real powerhouse of Project Wallace. This repository contains all the stuff that analyses CSS, from rules to values and from at-rules to stylesheet-wide stats. It currently is pretty basic and could definitely benefit from some more async operations, but because of it’s simplicity it’s pretty easy to maintain. The css-collection library is used quite a lot in this repository because of all the collections of selectors, values etc. that are in it.
See the repository on GitHub: css-analyzer
The last step in replacing the slow PHP API is to write a new API, probably also in Node, since it can use the other projects as dependencies. 💖
In the meantime, keep an eye on the Project Wallace GitHub profile for updates that will most definitely come.
A deep-dive in how the Analyze CSS page renders 6 times faster by applying 2 basic principles.
There's lots of places in CSS to have complexity, but we tend to focus on selectors most of the time. Let's have a look at other places too.