Not every web project needs a web framework, but when I pick a framework for a project, the main thing I want from it is to do the things that are hard to get right and that nearly every application needs. For me, the gold standard is Ruby on Rails. Out of the box, you get
- database connections for development, test, and production
- database migrations, expressible in either Ruby or SQL, and with
up
anddown
support - sessions that are secure by default, load automatically on first read, and write automatically on change
- the Rack API and the full power of community middleware
- asset compilation, minification, and caching
And that was all in 2012.