Description
Intro
Pattern lab was written in 2016 and improved over time when we added more and more features but never questioned the architecture. Therefore, the core has grown and got complicated over time, since we have no concrete typing and a complicated structure where everything gets generated asynchronously.
Idea
The basic idea is to rewrite the core in typescript where the types of patterns, of an engine, of pattern lab's main file and the config are present. To ensure, third-party developers can easily enhance pattern lab and know which properties are available.
We need a way to greatly reduce the complexity and at best make use of something providing features that are focussed on scalability.
Resolutions
I would like to introduce a framework like nest JS
which will give us all the scalable business application functionalities that angular
provides in frontend but for node
applications. We could greatly benefit from its service-based architecture and module provision.
Personally, I did not work with it yet, but I think it would be a great learning opportunity.
Still, I'm open to other Ideas and as soon as I start on that topic I will look into other alternatives and technologies.
Steps
- Migrate to TypeScript
- Migrate current feature set to new architecture, so it works as before (at least)
- Revisit functionalities that could be removed
- Rework functionalities that need improvement since a long time