Familiarity. It’s just the web.
Some frameworks make you learn a new language or a bizarre new syntax for a language you thought you already knew. Not Erstwhile.
At its core, Erstwhile is just HTML, Javascript, and CSS. Even its templating language ErML looks just like HTML, just with your own tags. The MVC portion of the framework is standard ES6 Javascript and feels similar to Ruby on Rails or a similar framework in another language.
Easy Discoverability
Erstwhile Framework is opinionated. It tries to get you to organize your code in a particular way because that makes it much easier to come back to later, or to hand off to someone else.
There is still plenty of room to innovate and do things your own way. Within a component or theme, for example, you can set things up however you would like; all that matters is that you implement the required methods on the respective Erstwhile superclasses. In these cases, the interfaces between your code and the person consuming it (even it is still you) are clean and well maintained.
ErML: HTML your way
“Components” are something of a loaded word in the development world. With ErML, Erstwhile gets it right.
Our templating language lets you define your own tags and then use them throughout your code just as easily at you would a <p> or a <table>. The framework provides a rich set of integration points for you to control the lifecycle of your custom components, and the can be as simple or as complex as you need them to be.
The Carrot without the Stick
While it does have opinions about file structure and naming conventions for classes and functions, Erstwhile is remarkably chill about most other things.
For example, if you use an Erswhile-compatible backend, the framework can write your entire model layer for you. If you want to do it your own way, that’s fine too. Similarly, if you its Form and Control interfaces in your components, it can do the work of gathering your data and displaying error messages for you, but you can also do it your own way.
Everything is loosely coupled so you can use the parts you want and leave out those you don’t.
Cross-Project Reusability
Erstwhile encourages building for the future.
Using Themes, it’s trivial to reuse components across multiple projects and websites. You can develop a corporate- or organisation-wide design language and all of your projects can use it right away.
Zero-fuss Models
Erstwhile has a simple backend module that ExpressJS-based servers can implement to allow the front-end to introspect their endpoints.
This allows the Erstwhile framework build your model layer without any additional work on your end.