Majorak

Home > Portfolio > Majorak

What is Majorak?

Majorak is a custom built templating PHP framework built on ADR principles. This will be a quite technical read so it is perhaps better to know what MVC is. It’s also noteworthy that as of 19/10/2022, this software is not production ready or feature complete.

What’s so unique about it?
Source

Regular frameworks, like Symfony or Laravel, are built on MVC principles: Model, View and Controller. Those three are originally meant for GUI applications like the browser you are using to read this, where Model, View and Controller may interact with each other, passing on information. It doesn’t really fit neatly into the space of a web application.

A diagram showing the relationship between Action, Domain and Responder in ADR frameworks. It's how Majorak works!
Source

In short, ADR consists of Action, Domain and Responder. The Action is the entry point, and does nothing other than pass on the information it receives to the Domain. The Domain may manipulate that information, interact with a database, or invoke other Actions to receive more information. Then, it passes an object, the DomainPayload, on to the Responder. That in turn will render the app.

It follows the World Wide Webs request ➝ response in a much neater way. This makes building these web applications much simpler and effective although creating traditional GUI programs is probably ill-advised with it.

Current status

Majorak is currently fully working in terms of ADR. However, running a real modern website or web app is still impossible.

One of the benefits of being a freelance webdeveloper is that I am endlessly more flexible in the technologies I choose for specific projects. Majorak has become a bit of a pet project, as I would eventually like to really put it to work for API’s, web apps or even convert my own website. If you are interested in helping develop it, you can have a gander on GitHub. If you wish to know more about ADR, you can look here.