Frameworks - a small selection
Frameworks save a lot of time…
if you don’t have to search for the suitable one every time, and if you don’t have to learn it from base everytime ;)
I just got a selection for myself over the years that suit for most cases. It’s no comparison or such, it’s just what I use and why.
And maybe there is one or another that fits your needs too.
Microframework
FlightPHP
The smallest and simplest framework I know. Possible to do everything in one file, still good structure.
One Requirement, and the autoloader, nothing more.
Features (I use):
- routing
- simple structure
- really NO dependencies
- PHP 7.x and even 8.x “ready”
- could even be used without composer
- everything needs to be made by hand
PHP Framework
Symfony
It’s extremely scalable in modules, from microservice with doctrine or renderer or even bigger solutions
Features:
- big community
- good documentation
- many modules already available (doctrine, twig, and so on…)
- dependency Injection
- debug bar - many useful information while developing
- “built in” OPCache
- could get memory hungry for extremely logical sites
- could get a little bit “slower” for extremely logical sites (if not cached)
- much practice (in my case ;) )
JS Framework
I’m more a backend developer and not settled in JS as I am in PHP, so the JS Framework selection is wider, and I got no favorite till now.
Frontend only
Vue
- easy and fast to learn
- performance is good
- logic and design could be separated
- growing community
- close to classic html and js
- gets slower at gigantic data (tables)
- some ready to use plugins
React
- well settled
- so much documentation
- better performance at more complicated sites
- so many ready to use plugins…
- no separation between logic and layout
- way higher learning curve
note: take a look at svelte - looks like react “lite”
Ember
- better debugging options
- close to html
- electron / cordova support
- easier logic builds
- predefined structure
- hot reload while developing
- complicated logic builds
Front + Backend
Meteor
- three part model (backend, frontend, components that are used by both)
- Fullstack / All in one environment
- high learning curve
Backend
Node Js
- no webserver needed
- ability to create websockets
Gaming
Phaser
- good documentation
- kinda easy to use
- many plugins
- a bit limited
(3D) Graphics
PixieJS
- kinda webgl microframework
- limited features
- small community
- less plugins
Three.js
- good documentation
- used by web ar
- good performance
- higher learning curve
Babylon JS
- good visual quality
- high performance
- well documented
- clientside memory usage
CSS
Bootstrap
- the classic - many use it
- have most features that you will need
- more features than you will need
MaterializeCSS
- lighter than bootstrap
- more pastel color themes by default
- more at the “flat design” pattern than bootstrap(?)
- some missing features
Framework Tools
Electron
Makes a html client side js app into a standalone desktop app, without the need to have version for mac, windows or linux.
One code 4 platforms - web, mac, windows and linux
Apache Cordova
Writing mobile apps with html/js with the possibility to use mobile based features like camera
Johnny-Five
Have to mention it, even if its more a library :p Coding low lvl hardware near IoT with NodeJs.
Google WebAR
“Upcoming” thematic. still not sure myself in which direction I personally will go…