There’s a myriad of frameworks for each programming language. Choosing a framework for a project is difficult, and often devleopers use what they are comfortable with without choosing to examine or learn new frameworks for projects. This is a mistake. There is not a “one size fits all” approach to frameworks. Each has it’s strengths and weaknesses and must be evaluated accordingly.
Decisions to make about using a language and framework for a project involve the following:
- resources available in the geographic area for employees that know the language or availability of contractors for remote work.
- peer usage of language and framework.
- number of editors in organization that will be updating the content.
Below are some lists of languages and common frameworks for each language.
- Django The web framework for perfectionists with deadlines.
- Flask Flask is a microframework for Python based on Werkzeug, Jinja 2 and good intentions.
- Bottle Bottle is a fast, simple and lightweight WSGI micro web framework for Python. It is distributed as a single file module and has no dependencies other than the Python Standard Library.
- Pyramid The Pylons Project was founded by the people behind the Pylons web framework to develop web application framework technology in Python. Rather than focusing on a single web framework, the Pylons Project will develop a collection of related technologies. The first package is the Pyramid web framework.
- Tornado Tornado is a Python web framework and asynchronous networking library, originally developed at FriendFeed. By using non-blocking network I/O, Tornado can scale to tens of thousands of open connections, making it ideal for long polling, WebSockets, and other applications that require a longlived connection to each user.
- TurboGears TurboGears 2 is built on top of the experience of several next generation web frameworks including TurboGears 1 (of course), Django, and Rails. All of these frameworks had limitations that frustrated us, and TG2 was built as an answer to that frustration.
- Django CMS With django CMS you can easily integrate your existing Django Apps
- Mezzanine Mezzanine is a powerful, consistent, and flexible content management platform. Built using the Django framework, Mezzanine provides a simple yet highly extensible architecture that encourages diving in and hacking on the code. Mezzanine is BSD licensed and supported by a diverse and active community.
- Quokka Flask and MongoDB powered CMS.
- Substance D Build Civilived Web Applications
- Plone Plone is among the top 2% of all open source projects worldwide, with 340 core developers and more than 300 solution providers in 57 countries.
- Wagtail Built by Developers for Developers. Based on Django
- Kotti Kotti is a high-level, Pythonic web application framework. It includes an extensible Content Management System called the Kotti CMS, offering all the features you would expect from a modern CMS.
- Pinax Pinax is an open source platform built on the Django Web Framework. By integrating numerous reusable Django apps and providing starter projects and infrastructure tools, Pinax takes care of the things that many sites have in common so you can focus on what makes your site different.
- Ruby on Rails Web development that doesn’t hurt.
- Sinatra Sinatra is a DSL for quickly creating web applications in Ruby with minimal effort.
- Cuba Cuba is one of the most easy to start with micro frameworks currently available to Rubyists.
- Radiant Radiant is a no-fluff, open source content management system designed for small teams.
- Adva adva-cms is a cutting edge open source application platform based on Ruby on Rails and Rails Engines.
- Casein A lightweight CMS toolkit for Ruby on Rails, based on Bootstrap.
- Browser CMS BrowserCMS supports larger teams of editors, has a robust set of features as part of its core, allows for varied permission models, and is customizable via modules.
- Locomotive What if you loved developing for your CMS as much as your clients loved using it?
- Comfortable Mexican Sofa ComfortableMexicanSofa is a powerful CMS Engine for Ruby on Rails 3 applications.
- Slate Slate is a content management system (CMS) developed using Ruby on Rails and is focused on rapid production of traditional-style Web sites created by WVU Web Services
- Refinery Ruby on Rails CMS that supports Rails 3.2 and 4.1