So i like command line since i run my on server and we use build tools from npm.
I like composer and i like kirby-cli.
I am also not the greatest php developer, mainly because ive simply not been doing it for that long compared to javascript (and node for that matter).
So i can safely say that whole javaesque verbose approach to classes and namespaces can be confusing for newcomers. Ofcourse this is me being lazy to actually pick up a book, learn it and be done with it. Often times i just revert to javascript style of more functional approach while writing php just piling functions on functions.
But the question realy is - does kirby need the complexity?
Lately ive been going through some of the kirby sourcecode and most of the time its very simple. I really like the codebase. Its very to the point and its not over engineered. Its few classes of very sensible things and clear methods. Its actually quite boring and thats a good thing.
Contrasting this with something like Grav (which approach i think you would like) - there is abstraction for everything. Lot of things done in ways “its supposed to be done”. For example - “straight php is evil! You must use twig for safety” Well thats some gained knowledge php devs believe in. The thing is Twig is made to show stuff already prepared from db, in filebased cms you are getting data mainly from traversing pages. So their approach is to basicaly extend Gravs twig more and more for functions that allow traversing the pages basicaly recreating php.
Sidestory:
This happens a lot for example with the whole bootstrap approach - you need few buttons and form and instead of writing few lines of css you include 100kb library and more importantly you have to learn big amount of classes - the whole thing is completely artificial and abstracted. To allow more customisation bootstrap adds more and more classes so in the end it can become class=“col-sm-6 col-md-5 offset-md-2 col-lg-6 offset-lg-0” just to do columns (this is from docs). Not mention you have to add more 10 classes for type and clearing etc… and in the end you still add your class “article” because in the end you still need to add some specific css…
Then they realize the website is becoming quite slow because of 30 js/css libraries used so create complicated build process that tries to find unused css and deletes it from your css file for which you need to use webpack and you have to walk every single page - so the build time takes 10 seconds. Webpack is then used for tree shaking of your js files. So you learn webpack and next year webpack is replaced by rollup…
End of sidestory:
I guess you get my point.
This is why i like Kirby - its boring. Its small. Please leave it at that.
Everybody in the startup world laughs at deploying with ftp (although we deploy with git). Yet when you get to the real world is about what works.
@mzur maybe if you could what would be achieved while requiring composer? I don’t have problem with it but i don’t see many real advantages either. If something - it will make it way harder for newcomers.