Comparison of server-side web frameworks

Comparison of
programming languages

* General comparison
* Assignment
* Basic syntax
* Basic instructions
* Comments
* Control flow
* Foreach loops
* While loops
* For loops
* Do-while
* Exception handling
* Enumerated types
* Algebraic data types
* Generators
* Anonymous functions
* Conditional expressions
* Arrays
* Associative arrays
* Scope
* String operations
* String functions
* Higher-order functions
* Filter
* Fold
* Map
* Type systems
* Dependent types
* List comprehension
* Object-oriented programming
* Object-oriented constructors
* Operators
* Ternary conditional operator
* Null coalescing operators
* Safe navigation operators
* Modulo operators

* Evaluation strategy
* List of "Hello World" programs

* * *

Comparison of individual
languages

* ALGOL 58's influence on ALGOL 60
* ALGOL 60: Comparisons with other languages
* ALGOL 68: Comparisons with other languages
* Compatibility of C and C++
* Comparison of Pascal and Borland Delphi
* Comparison of Object Pascal and C
* Comparison of Pascal and C
* Comparison of Java and C++
* Comparison of C# and Java
* Comparison of C# and Visual Basic .NET
* Comparison of Visual Basic and Visual Basic .NET

* v
* t
* e

This is a comparison of notable web frameworks, software used to build and deploy web applications. This article focuses on frameworks used for building the backend.

## General

[edit]

Basic information about each framework.

Systems listed on a light purple background are no longer in active development.

### ASP.NET

[edit]

See also: ASP.NET, ASP.NET Core, and List of CLI languages

Project  | Current stable version  | Release date  | License

|
|
|

ASP.NET Dynamic Data |  |  |
Base One Foundation Component Library (BFC)  | 7.51  | 2018-06-01  | Proprietary
Component-based Scalable Logical Architecture (CSLA)  | 4.11.2  | 2019-07-31[1] | MIT
MonoRail | 2.1  | 2011-03-17[2] | Apache

### C++

[edit]

See also: C++

Project  | Current stable version  | Release date  | License

|
|
|

CppCMS | 1.2.1  | 2018-05-18[3] | MIT
Drogon | 1.9.5  | 2024-06-08[4] | MIT
Poco | 1.13.3[5] | 2024-04-06[±] | Boost Software License
Wt | 4.10.4  | 2024-03-06[6] | GPL, Proprietary

### ColdFusion Markup Language (CFML)

[edit]

See also: ColdFusion Markup Language and Adobe ColdFusion

Project  | Current stable version  | Release date  | License

|
|
|

ColdBox Platform | 7.3.0[7] | 2024-05-14[±] | Apache v2

### Elixir

[edit]

See also: Elixir (programming language)

Project  | Current stable version  | Release date  | License

|
|
|

Phoenix | 1.7.14[8]  | 2024-06-18; 12 months ago  | MIT License

### Haskell

[edit]

See also: Haskell

Project  | Current stable version  | Release date  | License

|
|
|

Snap | 1.1.3.2[9] | 2023-07-19  | BSD-3
Yesod | 1.6.24.5[10]  | 2023-09-14; 21 months ago  | MIT License

### Java

[edit]

See also: Java (programming language) and Java (software platform)

Project  | Current stable version  | Release date  | License

|
|
|

Apache Click | 2.3.0  | 2011-03-27  | Apache 2.0
Apache OFBiz | 24.09.01[11]  | 2025-03-11; 3 months ago  | Apache 2.0
Apache Shale | 1.0.4  | 2007-12-19  | Apache
Apache Sling | 12  | 2022-03-18  | Apache 2.0
Apache Struts | 7.0.3[12]  | 2025-03-03; 3 months ago  | Apache 2.0
Apache Tapestry | 5.8.4[13]  | 2024-02-06; 16 months ago  | Apache 2.0
Apache Wicket | 10.5.0[14]  | 2025-04; 2 months ago  | Apache 2.0
AppFuse | 3.5.0  | 2015-02-20  | Apache 2.0
Eclipse Mojarra (Jakarta Faces RI)  | 4.1.0[15]  | 2024-06-05; 12 months ago  | CDDL, GNU GPL 2, Apache 2.0
Eclipse RAP | 4.1  | 2024-12-04  | Eclipse
Grails | 6.2.3[16]  | 2025-01-03; 5 months ago  | Apache
Google Web Toolkit | 2.12.2  | 2025-03-03  | Apache 2.0
JBoss Seam | 3.1.0 final  | 2012-01-13  | GNU LGPL
JWt | 4.11.4[17]  | 2025-04-03; 2 months ago  | GPL, Proprietary
Netty | 4.2.2[18]  | 2025-06-05; 24 days ago  | Apache License 2.0
OpenLaszlo | 4.9.0  | 2010-10-21  | CPL
Oracle ADF | 12.2.1.4  | 2019-10-09  | Oracle Technology Network Developer License
Play | 3.0.3[19]  | 2024-05-07; 13 months ago  | Apache 2.0
Spring | 6.2.7[20]  | 2025-05-15; 45 days ago  | Apache 2.0
Stripes | 1.6.0  | 2015-07-23  | Apache
Vaadin | 24.7.0[21]  | 2025-03-19; 3 months ago  | Apache 2.0
Wavemaker | 11.6.0[22] | 2024-03-03  | Apache
WebObjects | 5.4.3  | 2008-09-15  | Proprietary

### JavaScript

[edit]

See also: JavaScript and Comparison of JavaScript-based web frameworks

Project | Current stable version | Release date | License

|
|
|

Express.js | 5.1.0[23]  | 2025-03-31; 2 months ago  | MIT License
Fastify | 5.4.0[24]  | 2025-06-12; 17 days ago  | MIT License
Meteor | 3.3[25]  | 2025-06-17; 12 days ago  | MIT License
NestJS | 11.1.3[26]  | 2025-06-06; 23 days ago  | MIT License
Next.js | 15.3.3  | 2025-05-30; 30 days ago  | MIT License
Nuxt.js | 3.17.5[27]  | 2025-06-03; 26 days ago  | MIT License
Remix | 7.1.1[28]  | 2024-12-23; 6 months ago  | MIT License
Sails.js | 1.5.11[29]  | 2024-05-24; 13 months ago  | MIT License
SvelteKit | 1.15.5[30]  | 2023-04-13; 2 years ago  | MIT License

### Perl

[edit]

See also: Perl

Project  | Current stable version  | Release date  | License

|
|
|

Catalyst | 5.90131[31] | 2023-07-20[±] | Artistic, GPL
Dancer | 1.1.1 [32] | 2024-07-18[±] | Artistic, GPL
Maypole | 2.13  | 2008-04-18  | Artistic, GPL
Mojolicious | 9.37[33] | 2024-05-13[±] | Artistic

### PHP

[edit]

See also: PHP

Project  | Start date  | Current stable version  | Release date  | License

|
|
|
|

CakePHP | 2005-08  | 5.2.4[34]  | 2025-05-17;43 days ago  | MIT
CodeIgniter | 2006-02-28  | 4.6.1[35]  | 2025-05-02;58 days ago  | MIT
Fat-Free | 2009-09  | 3.9.0[36] | 2024-12-29[±] | GPLv3
FuelPHP | 2011-08  | 1.9.0[37] | 2021-12-28[±] | MIT
Gyroscope | 2008-11-20  | 20.4[38] | 2023-11-24  | BSD
Jamroom | 2003-07-28  | 7.0.1[39] | 2024-01-01[±] | MPL
Kajona  | 2006  | 6.2[40] | 2017-06-08  | LGPLv2
Laminas (formerly Zend Framework)  | 2006-03  | 3.8.0[41] | 2024-11-21  | New BSD
Laravel | 2011-07-31  | 12.19.3[42]  | 2025-06-18; 11 days ago  | MIT
Li3 (Lithium)  | 2009-10  | 2.0.1[43] | 2024-03-218[±] | BSD
Phalcon | 2012-11-14  | 5.8.0[44] | 2024-07-09  | BSD
Pop PHP | 2012-03-19  | 5.5.0[45] | 2025-02-12  | BSD Licence
PRADO | 2004-01  | 4.3.1[46] | 2025-05-21[±] | New BSD[47]
SilverStripe | 2007-02-03  | 5.3.0[48] | 2024-11-04[±] | BSD
Smart.Framework | 2015-02-01  | svn.1925[49] | 2024-01-19[±] | BSD
Symfony | 2005-10  | 7.3.0[50] | 2025-05-29[±] | MIT
Yii | 2008-12-03  | 2.0.52[51] | 2025-02-13[±] | New BSD

### Python

[edit]

See also: Python (programming language) and List of Python software § Web frameworks

Project  | Current stable version  | Release date  | License

|
|
|

BlueBream | 1.0[52]  | 2011-01-18; 14 years ago  | ZPL
CherryPy | 18.10.0[53]  | 2024-06-15; 12 months ago  | BSD
CubicWeb | 4.8.0[54]  | 2024-05-21; 13 months ago  | LGPL
Django | 5.2.3[55]  | 2025-06-10; 19 days ago  | BSD
FastAPI | 0.115.13[56]  | 2025-06-17; 12 days ago  | MIT
Flask | 3.1.1[57]  | 2025-05-13; 47 days ago  | BSD
Google App Engine | 1.9.91[58]  | 2020-05-11; 5 years ago  | LGPL, Proprietary
Grok | 6.1[59]  | 2025-06-10; 19 days ago  | ZPL
Gunicorn | 23.0.0[60]  | 2024-08-10; 10 months ago  | MIT
Jam.py | 7.0.58[61]  | 2025-06-17; 12 days ago  | BSD
Pyjs | 0.8.1a[62]  | 2012-05-09; 13 years ago  | Apache
Pylons | 1.0.2[63]  | 2015-07-22; 9 years ago  | BSD
Pyramid | 2.0.2[64]  | 2023-08-25; 22 months ago  | BSD
Tornado | 6.5.1[65]  | 2025-05-22; 38 days ago  | Apache
TurboGears | 2.5.0[66]  | 2025-02-18; 4 months ago  | MIT, LGPL
web2py | 2.27.1[67]  | 2023-11-16; 19 months ago  | LGPL3
Zope 2 | 5.6.0[68]  | 2022-09-09; 2 years ago  | ZPL

### Ruby

[edit]

See also: Ruby (programming language)

Project  | Current stable version  | Release date  | License

|
|
|

Padrino | 0.14.4  | 2019-01-14[69] | MIT
Ruby on Rails | 8.0.2[70]  | 2025-03-12; 3 months ago  | MIT
Sinatra | 3.0.2[71]  | 2022-10-01; 2 years ago  | MIT

### Scala

[edit]

See also: Scala (programming language)

Project  | Current stable version  | Release date  | License

|
|
|

Lift | 3.4.3  | 2020-11-28  | Apache 2.0
Play | 2.8.8  | 2021-04-08  | Apache 2.0
Scalatra | 2.8.1  | 2021-09-25  | BSD

### Others

[edit]

Project  | Language | Current stable version  | Release date  | License

|
|
|
|

AIDA/Web | Smalltalk | 6.7  | 2014-09-14  | MIT
Oracle APEX | PL/SQL | 22.2  | 2022-11-10  | Proprietary freeware
Flex | ActionScript, MXML | 4.16.1  | 2019-11-23  | Apache
Grails | Groovy (JVM)  | 6.2.2[72] | 2024-11-20  | Apache
Morfik | C#, BASIC, Pascal, Java | 3.0.8.1  | 2010-12-13  | Proprietary freeware
Opa | Opa  | 1.1.1  | 2013-04-16[73] | MIT and AGPL
OpenACS | Tcl | 5.10.1[74] | 2024-09-03  | GPL
Seaside | Smalltalk | 3.5.9[75] | 2024-10-20  | MIT

## Comparison of features

[edit]

### C++

[edit]

Project  | Ajax | MVC framework  | MVC push-pull | i18n & L10n? | ORM | Testing framework(s)  | DB migration framework(s)  | Security framework(s)  | Template framework(s)  | Caching framework(s)  | Form validation framework(s)

|
|
|
|
|
|
|
|
|
|
|

CppCMS | Yes  | Yes  | Push  | Yes  | CppDB  | No  | No  | Yes  | Yes  | Yes  | Yes
Wt | Yes  | Yes  | Push & Pull  | Yes  | Wt::Dbo  | Boost.test  |  | Yes  | Yes  | No  | Yes

### ColdFusion Markup Language (CFML)

[edit]

Project  | Ajax | MVC framework  | MVC push-pull | i18n & L10n? | ORM | Testing framework(s)  | DB migration framework(s)  | Security framework(s)  | Template framework(s)  | Caching framework(s)  | Form validation framework(s)

|
|
|
|
|
|
|
|
|
|
|

ColdBox Platform | Yes  | Yes  | Push-pull  | Yes  | Quick & cbORM  | Yes via TestBox  | Yes  | Yes  | CFML | Yes  | Yes

### Java

[edit]

Project  | Language  | Ajax | MVC framework  | MVC push-pull | i18n & L10n? | ORM | Testing framework(s)  | DB migration framework(s)  | Security framework(s)  | Template framework(s)  | Caching framework(s)  | Form validation framework(s)

|
|
|
|
|
|
|
|
|
|
|
|

Apache Click | Java  | jQuery | Page oriented  | Pull  | Yes  | Hibernate, Cayenne | Yes  |  | pluggable  | Velocity, JSP  | Cached templates  | Built-in validation
Apache OFBiz | Java, Groovy, XML,  | jQuery | Yes  | Push-pull  | Yes  | Entity Engine (Internal kind of ORM, not really ORM, notably used by Atlassian Jira)  | JUnit  | Entity Engine Tools, Data File Tool, CSV Parser, Apache POI  | Internal Security framework based on OWASP  | Freemarker (Recommended), Velocity (Support Available), JSP (Support Available)  | Internal Cache Maintenance with Distributed Cache Clearing for clusters  | Server side validation, Client Side Validation (JQuery)
Apache Sling | Java  | Yes  | Yes  | Push-pull  |  | Uses JCR content repository  |  |  | Yes  | Yes  | Yes
Apache Struts | Java  | Yes  | Yes  | Push-pull  | Yes  | Yes  | Unit tests |  |  | Yes  |  | Yes
Apache Tapestry | Java  | Prototype, jQuery  | Yes  | Pull  | Yes  | JPA, Hibernate, Cayenne | Selenium, TestNG, JUnit |  | Spring Security, Shiro  | Yes  | with extensions  | Native or Bean Validation
Apache Wicket | Java  | Extensions for YUI, ExtJS, more  | No (Modular event-driven)  | Pull  | Yes  | with extensions  | Mock objects, unit and integration tests via extension  |  | Yes  | Yes  | Yes  | Yes
Grails | Groovy | Yes  | Yes  | Push  | Yes  | GORM, Hibernate | Unit tests, integration test, functional test | multiple plugins: autobase, dbmigrate, more  | Spring Security,[76] Apache Shiro[77] | Yes  | Yes  | Yes
JavaServer Faces | Java  | Yes  | Yes  | Pull  | Yes  | JPA, Hibernate and any other Java EE ORM framework  | JUnit |  | Yes  | Facelets, JSP  | Yes  | Native validators, integration with Bean Validation
Project  | Language  | Ajax | MVC framework  | MVC push-pull | i18n & L10n? | ORM | Testing framework(s)  | DB migration framework(s)  | Security framework(s)  | Template framework(s)  | Caching framework(s)  | Form validation framework(s)
JBoss Seam | Java  | Yes  | Yes  | Pull  | Yes  | JPA, Hibernate  | JUnit, TestNG |  | JAAS integration, Drools, Hibernate Filters, OpenID, CAPTCHA | Facelets  | JBoss Cache, Ehcache | Hibernate Validator
JWt | Java  | Yes  | Yes  | Push-pull  | Yes  |  |  |  | Yes  | Yes  |  | Yes
Play | Java, Scala  | Yes  | Yes  | Push-pull  | Yes  | JPA, Hibernate  | JUnit, Selenium | Yes  | via Core Security module  | Yes  | Yes  | Server-side validation
Spring | Java | Yes  | Yes  | Push  | Yes  | Hibernate, iBatis, more  | Mock objects, unit tests  |  | Spring Security (formerly Acegi)  | JSP, Commons Tiles, Velocity, Thymeleaf, more  | Ehcache, more  | Commons validator, Bean Validation
Stripes | Java  | Yes  | Yes  | Pull  | Yes  | JPA, Hibernate  | Yes  |  | framework extension  | Yes  |  | Yes
Vaadin | Java  | GWT |  | Push-pull  | Yes  | Yes  | Yes  |  |  | Yes  |  | Yes
Wavemaker | JavaScript (client), Java (server)  | Dojo Toolkit | Yes  | Push  | Dojo Toolkit  | Hibernate  | JUnit  | Hibernate  | Spring Security (formerly Acegi), role-based access control | Dojo Toolkit  | Dojo Toolkit  | Regular expression, schema-driven validation
Project  | Language  | Ajax | MVC framework  | MVC push-pull | i18n & L10n? | ORM | Testing framework(s)  | DB migration framework(s)  | Security framework(s)  | Template framework(s)  | Caching framework(s)  | Form validation framework(s)
WebObjects | Java  | Yes  | Yes  | Push-pull  | Yes  | EOF | WOUnit (JUnit), TestNG, Selenium  | in Project WONDER  |  | Yes  | Yes  | Yes
Google Web Toolkit | Java, JavaScript  | Yes  |  |  | Yes  | JPA with RequestFactory  | JUnit (too early), jsUnit (too difficult), Selenium (best)  | via Java  | Yes  |  |  | Bean Validation
ZK | Java, ZUML  | jQuery | Yes  | Push-pull  | Yes  | any J2EE ORM framework  | JUnit, ZATS  | HibernateUtil, SpringUtil  | Spring Security  | Macro components & composition  | Yes  | client, server

### JavaScript

[edit]

Project  | Ajax | MVC framework  | MVC push-pull | i18n & L10n? | ORM | Testing framework(s)  | DB migration framework(s)  | Security framework(s)  | Template framework(s)  | Caching framework(s)  | Form validation framework(s)

|
|
|
|
|
|
|
|
|
|
|

AngularJS | XHR, JSONP  | Yes  |  | i18n and l10n  |  | Karma (unit testing), Protractor (end-to-end testing)  |  | Content Security Policy (CSP), XSRF  | Templates  | Caching  | Form validation (client-side)
EmberJS | Yes  | Yes  |  | Yes  | Ember Data  | QUnit  |  |  | Handlebars  |  |
qooxdoo | Yes  | Data binding  |  | i18n  |  | Testrunner  |  |  |  |  | Form Validation
SproutCore | Yes  | Yes  |  |  |  |  |  |  |  |

### Perl

[edit]

Project  | Ajax | MVC framework  | MVC push-pull | i18n & L10n? | ORM | Testing framework(s)  | DB migration framework(s)  | Security framework(s)  | Template framework(s)  | Caching framework(s)  | Form validation framework(s)

|
|
|
|
|
|
|
|
|
|
|

Catalyst | Toolkit-independent (REST & JSON support, specific plugins for Prototype JavaScript Framework, more)  | Yes  | Push in its most common usage  | Yes  | DBIx::Class, Rose::DB::Object, more  | Supports Perl testing standards, Test Anything Protocol (TAP) | ?  | ACL-based, external engines, more  | Template::Toolkit, HTML::Template, HTML::Mason, PHP and any extant Perl template engine  | Cache, Memcached, shared memory, more  | HTML::FormHandler HTML::FormFu, HTML::FormValidator, more
Dancer | Yes  | Yes  | Push  | Yes  | DBIx::Class, ORMesque  | Yes  | ?  | ?  | Template::Toolkit, HTML::Mason, Text::MicroTemplate, any extant Perl template engine  | Cache, Memcached, shared memory, more  | DataFu, any extant Perl form validation software
Maypole | ?  | ?  | ?  | ?  | ?  | ?  | ?  | ?  | ?  | ?  | ?
Mojolicious | Toolkit-independent (REST & JSON support)  | No explicit model support though commonly used as MVC  | Push  | Yes  | Commonly used with DBIx::Class  | Test::Mojo  | ?  | Signed session cookie  | Built-in Perl templating, Template::Toolkit and several others via plugins  | ?  | Not explicitly, use any Perl Modules

### PHP

[edit]

Project  | PHP version  | Ajax | MVC framework  | MVC push-pull | i18n & L10n? | ORM | Testing framework(s)  | DB migration framework(s)  | Security framework(s)  | Template framework(s)  | Caching framework(s)  | Form validation framework(s)  | Scaffolding | RAD | Mobility

|
|
|
|
|
|
|
|
|
|
|
|
|
|
|

CakePHP | ≥ 7.4[78] | Any  | Yes  | Yes, Push & Cells  | Yes  | ORM, Data Mapper Pattern, SQL Relational Algebra Abstraction Layer  | Unit tests, object mocking, fixtures, code coverage, memory analysis with PHPUnit and Xdebug and Continuous Integration via Travis | Yes  | CRUD based, ACL-based, Multiple Plugins  | Themes, Layouts, Cells, Views, Elements, Plugins for Twig, Bootstrap, etc.  | Memcache, Redis, XCache, APC, File  | Validation via Contexts (Table (DAO), Entity (VO) & Controller), CSRF Protection  | Plugin CRUD  | Cake Bake  | Mobile Agent Detection, Layouts
CodeIgniter | ≥ 8.1[79] | Any  | Yes  | Push  | Mostly[80] | Third party only  | Ready for next release, Unit tests for v.4 and up  | Yes  | Yes  | Yes  | Yes  | Yes  | No[81] | Yes  | Templates
Fat-Free Framework | ≥ 5.4[82] | Any  | MVC, RMR  | Push-pull  | Yes  | Data mappers for SQL, MongoDB, Flat-File  | Built-in  | Yes  | Yes  | Yes  | APC, Memcache, XCache, WinCache, and Filesystem  | Yes  | No  | ?  | ?
FuelPHP | ≥ 5.3.3[83] | Yes  | MVC, HMVC  | Push  | Yes  | Yes  | PHPUnit  | Yes  | Yes, Plugins available  | Yes, Plugins available  | File, Redis, Memcache, more  | Yes  | Yes  | ?  | ?
Gyroscope | ≥ 5.4  | nano.js, replaceable[84] | LCHH | Push-pull  | Mostly  | Data-source agnostic  | No  | Built-in Schema comparison tool and UDF editor  | ACL-based, replaceable  | Implementation-specific; helper functions and theme templates available  | APC, Memcache  | Yes  | Interactive code generator  | Yes  | Dedicated mobile and tablet layouts, landscape-portrait transformation
Kajona  | ≥ 7[85] | Any  | Yes  | Push  | Yes  | Yes  | PHPUnit, Selenium, Jasmine | Yes  | Yes  | Yes  | APC, Database, File  | Yes  | Yes  | Yes  | Bootstrap
Laminas (formerly Zend Framework)  | ≥ 7.3[86] | Toolkit-independent  | Yes  | Push-pull  | Yes  | Table and row data gateway or Doctrine  | Unit tests, PHP Unit or other independent  | Yes  | ACL-based  | Yes  | APC, Database, File, Memcache, Zend Platform | Yes  | Yes  | ?  | ?
Laravel | ≥ 8.0[87] | Any  | Yes  | Push  | Yes  | Eloquent | PHPUnit | Yes  | Yes  | Yes  | APC, Database, File, Memcache, Redis | Yes  | Yes  | Yes  | Yes
Li3 (Lithium)  | ≥ 5.3.6  | Any  | Yes  | Push  | Yes  | Yes  | Unit tests, builtin test framework or other independent  | No  | Yes, Plugins available  | PHP, Twig Plugin available  | Memcache, Redis, XCache, APC, File  | Yes, with CSRF Protection and Form Signing  | No  | Yes  | ?
Phalcon | ≥ 8.0[88] | Any  | Yes  | Push  | Yes  | Yes  | Codeception PHPUnit | Yes  | Yes  | Volt, PHP  | APC, Memcache, Memory, Redis, Redis Cluster, File  | Yes  | Yes  | Yes  | ?
Pop PHP | ≥ 8.2  | Any  | Yes  | Push  | Yes  | Yes  | PHPUnit with CI via GitHub Actions  | Yes  | ACL-based  | Yes  | APC, Database, File, Memcache, Redis, Session  | Yes  | Yes  | Yes  | ?
PRADO | ≥ 7.3[89] | Prototype, script.aculo.us, own components[90] | No  | Push-pull  | Yes  | Data access objects (DAO), active record pattern, SQLMap data mapper  | PHPUnit, SimpleTest, Selenium | No  | Yes  | XML-based, similar to ASP.NETs[90] | APC, Database, eAccelerator, Memcached, XCache  | Yes[90] | Yes[90] | ?  | ?
SilverStripe (Sapphire)  | ≥ 7.1[91] | jQuery, jQuery UI  | Yes  | Push-pull  | Yes  | Active record pattern  | Unit tests, Selenium | Automatic  | incl. OpenID  | Themes  | Yes  | Yes  | Yes  | Yes  | Yes
Silex  | ≥ 5.3.9  | Yes  | Yes  | Yes  | Yes  | Plugin exists (Doctrine)  | Yes  | No  | Yes  | PHP, Twig | Plugin exists  | Yes  | Plugin exists  | ?  | ?
Smart.Framework | ≥ 7.3[92] | Yes  | Yes  | Yes  | Yes  | Yes (PostgreSQL, MySQL, SQLite, MongoDB, Solr, others via plugins)  | Yes  | No  | Yes  | Yes (Markers, Twig, others via plugins)  | Yes (File, Redis, others via plugins)  | Yes  | No  | Yes  | Yes, (jQuery mobile, Bootstrap, others via plugins)
Symfony | ≥ 8.1[93] | Prototype, script.aculo.us, Unobtrusive Ajax with UJS and PJS plugins  | Yes  | Push  | Yes  | Propel, Doctrine (YAML)  | Yes  | Plugin exists (alpha code)  | Plugin  | PHP, Twig | Yes  | Yes  | Yes  | ?  | ?
TYPO3 | ≥ 7.2[94] | Any  | Yes  | Push-pull  | Yes  | Yes  | Yes  | Partial  | Yes  | TYPO3 Fluid  | Yes  | Yes  | Plugin exists  | Plugin exists  | ?
Yii | ≥ 5.4[95] | jQuery, jQuery UI, own components, plugins  | Yes  | Push-pull  | Yes  | Data Access Objects (DAO), Active Record Pattern, Plugins (incl. Doctrine 2.0)  | PHPUnit, Selenium | Yes  | ACL-based, RBAC-based, plugins  | PHP-based, PRADO-like, plugins  | APC, Database, eAccelerator, File, Memcache, Redis, WinCache, XCache, Zend Platform | Yes  | Yes[96] | ?  | ?

### Python

[edit]

Project  | Language  | Ajax | MVC framework  | MVC push-pull | i18n & L10n? | ORM | Testing framework(s)  | DB migration framework(s)  | Security framework(s)  | Template framework(s)  | Caching framework(s)  | Form validation framework(s)  | Python 3.*

|
|
|
|
|
|
|
|
|
|
|
|
|

CherryPy | Python  | —  | —  | —  | —  | pluggable  | —  | —  | —  | pluggable  | —  | —  | Yes
Django | Python  | Yes  | Yes  | Push  | Yes  | Yes  | Yes  | Yes  | Yes  | built-in, Jinja2, Mako, Cheetah | Yes  | Yes  | Yes
FastAPI | Python  | Yes  | —  | —  | —  | ORM-agnostic  | via pytest | depends on ORM  | Yes  | Jinja2  | —  | Yes  | Yes
Flask | Python  | Yes  | —  | —  | Yes  | ORM-agnostic  | via unittest  | depends on ORM  | Yes  | Jinja2 | Yes  | Yes  | Yes
Jam.py | Python, JavaScript | Yes  | Event driven  | Yes  | Yes  | Yes  | via pytest and mocha  | Yes  | Yes  | Yes  | Yes  | Yes  | Yes
Pyjs | Python, JavaScript | Yes  | Use PureMVC Python version (compiled to JavaScript)  |  | Yes  | ??, no direct data access  |  | No  |  |  |  |  | No
Pylons | Python  | helpers for Prototype and script.aculo.us | controller  | Push  | Yes  | ORM-agnostic  | via nose  | depends on ORM  |  | pluggable: Mako, Genshi, Myghty, Kid, more  | native: pluggable: Redis, Beaker (memory, memcached, file, databases)  | preferred formencode  | No
Pyramid | Python  | Yes  | Yes  | Push  | Yes  | ORM-agnostic  | Yes  | depends on ORM  | Yes  | pluggable: Jinja2, Chameleon, Mako, Genshi, more | default: native session factory. pluggable: Redis, PyNaCl, Beaker (memory, memcached, file, databases), more | deform, formencode, WTForms, more | Yes
TACTIC  | Python  | Yes  | Yes  | Pull  | No  | Yes  | Yes  | Yes  | Yes  | Mako  | No  | Yes  | No
Tornado | Python  | See Advanced Async Example implements AJAX  | —  | —  | —  | —  | —  | —  | —  | —  | —  | —  | Yes
TurboGears | Python  | Toolkit-independent, provides support via JSON  | Full stack, best-of-breed based  | Push  | Yes  | SQLAlchemy  | nose | SQLAlchemy-Migrate  | Repoze.what & Repoze.who  | pluggable: Genshi, more  | Support for memcached, and any WSGI compliant system  | ToscaWidgets, utilizing FormEncode  | Yes
web2py | Python  | Yes  | Yes  | Push  | Yes  | Yes  | Yes  | Yes  | Yes  | Yes  | Yes  | Yes  | Yes[97]
BlueBream (Zope 3)  | Python  | via add-on products, e.g. Plone w/KSS  | Yes  | Pull  | Yes  | ZODB, SQLObject, SQLAlchemy  | Unit tests, functional tests  | ZODB generations  | ACL-based  | Yes  | Yes  | Yes  | No
Zope 2  | Python  |  | Yes  | Pull  | Yes  | ZODB, SQLObject, SQLAlchemy  | Unit tests  |  | ACL-based  | Yes  | Yes  | CMFFormController  | No

### Ruby

[edit]

Project  | Ajax | MVC framework  | MVC push-pull | i18n & L10n? | ORM | Testing framework(s)  | DB migration framework(s)  | Security framework(s)  | Template framework(s)  | Caching framework(s)  | Form validation framework(s)

|
|
|
|
|
|
|
|
|
|
|

Ruby on Rails | Prototype, script.aculo.us, jQuery | ActiveRecord, Action Pack | Push  | Yes  | ActiveRecord | Unit Tests, Functional Tests and Integration Tests  | Yes  | Plug-in  | Yes  | Yes  | Yes
Sinatra | No  | Yes  | Push  | No  | ORM-independent  | rack-test  | Yes  | through Rack middleware  | Yes  | through Rack middleware  | No

### Others

[edit]

Project  | Language  | Ajax | MVC framework  | MVC push-pull | i18n & L10n? | ORM | Testing framework(s)  | DB migration framework(s)  | Security framework(s)  | Template framework(s)  | Caching framework(s)  | Form validation framework(s)

|
|
|
|
|
|
|
|
|
|
|
|

AIDA/Web | Smalltalk | Yes  | Yes  |  | Yes  | Gemstone/S, GLORP, more  | SUnit  |  | Yes  |  |  | Yes
Application Express | PL/SQL | Yes  |  |  | Yes  |  |  | Yes  | Yes  |  |  | Yes
Flex | ActionScript, MXML | Not by name but similar technology[98] |  |  |  |  | FlexUnit  |  |  |  |  |
Lift | Scala | Yes  | Yes  | Pull  | Yes  | Yes  | ScalaTest, Selenium[99] | Yes  | Yes  | Yes  | Yes  | Yes
Opa | Opa  | Yes  |  |  | Yes  | MongoDB |  |  | Yes  | Yes  | Yes  |
OpenACS | Tcl | Yes  | Yes  |  | Yes  | Yes  | Yes  | Yes  | Yes  | Yes  | Yes  | Yes
Seaside | Smalltalk | jQuery, jQuery UI, Prototype JavaScript Framework, script.aculo.us, more  | Yes  |  | Yes  | GLORP, Gemstone/S, more  | Unit tests, SUnit  |  |  | No, intentionally  |  | Magritte
Project  | Language  | Ajax  | MVC framework  | MVC push-pull  | i18n & L10n?  | ORM  | Testing framework(s)  | DB migration framework(s)  | Security framework(s)  | Template framework(s)  | Caching framework(s)  | Form validation framework(s)

## See also

[edit]

* Computer programming portal

Lists of frameworks for frontend development:

* Comparison of JavaScript-based web frameworks
* CSS framework

Other:

* Comparison of shopping cart software
* Content management system
* Dynamic web page
* Java view technologies and frameworks
* List of content management systems
* List of rich web application frameworks
* List of web service frameworks

## References

[edit]

1. ^ "Version 4.11.2". Github. Retrieved 4 September 2019.
2. ^ "Download - Castle Project". castleproject.org. Archived from the original on 2017-06-07. Retrieved 2015-01-02.
3. ^ "CppCMS Blog". Blog.cppcms.com. Archived from the original on 2013-08-03. Retrieved 2023-11-04.
4. ^ "drogonframework/drogon". GitHub. Retrieved 2024-07-10.
5. ^ "Releases - pocoproject/poco". Retrieved 2024-07-10.
6. ^ "Wt: Release notes". www.webtoolkit.eu. Archived from the original on 2017-08-06. Retrieved 2024-07-10.
7. ^ "ColdBox Platform Versions". forgebox.io. Retrieved 2024-05-14.
8. ^ "phoenixframework/phoenix".
9. ^ "snapframework/snap". github.com.
10. ^ "yesodweb/yesod".
11. ^ "Release 24.09.01". 11 March 2025. Retrieved 22 April 2025.
12. ^ "Release 7.0.3". 3 March 2025.
13. ^ "Download".
14. ^ https://github.com/apache/wicket/blob/master/CHANGELOG-10.x. Retrieved 7 May 2025. `{{cite web}}`: Missing or empty `|title=` (help)
15. ^ "Release 4.1.0". 5 June 2024. Retrieved 5 June 2024.
16. ^ "Release 6.2.3". 3 January 2025. Retrieved 22 January 2025.
17. ^ "Release 4.11.4". 3 April 2025. Retrieved 24 April 2025.
18. ^ "Release 4.2.2". 5 June 2025. Retrieved 18 June 2025.
19. ^ "Release 3.0.3". 7 May 2024. Retrieved 9 May 2024.
20. ^ "v6.2.7". 15 May 2025.
21. ^ "vaadin/framework/releases".
22. ^ "WaveMaker 11.6.0 - Release date: 03 March 2024 | WaveMaker Docs". www.wavemaker.com. 2024-03-04. Retrieved 2024-03-06.
23. ^ "Release 5.1.0". 31 March 2025. Retrieved 10 April 2025.
24. ^ "Release 5.4.0". 12 June 2025. Retrieved 19 June 2025.
25. ^ https://forums.meteor.com/t/faster-builds-in-meteor-3-3-modern-build-stack-with-swc-and-bundler-optimizations/63697. `{{cite web}}`: Missing or empty `|title=` (help)
26. ^ "Release 11.1.3". 6 June 2025. Retrieved 18 June 2025.
27. ^ "Release 3.17.5". 3 June 2025. Retrieved 15 June 2025.
28. ^ https://reactrouter.com/start/changelog. Retrieved 25 December 2024. `{{cite web}}`: Missing or empty `|title=` (help)
29. ^ "Release 1.5.11". 24 May 2024. Retrieved 18 November 2024.
30. ^ "@sveltejs/kitTypeScript icon, indicating that this package has built-in type declarations1.15.5". npmjs. Retrieved 26 November 2024.
31. ^ "Catalyst-Runtime". metacpan.org. Retrieved 15 August 2024.
32. ^ "Dancer2 Releases". perldancer.org. Retrieved 2024-08-15.
33. ^ "Mojolicious-9.30". Retrieved 2024-08-15 – via MetaCPAN.
34. ^ "Release 5.2.4". 17 May 2025. Retrieved 25 May 2025.
35. ^ "CodeIgniter 4.6.1".
36. ^ "fatfree/lib/CHANGELOG.md". github.com. Retrieved 2024-12-29.
37. ^ "Releases - fuel/core". github.com. Retrieved 2022-04-14.
38. ^ "Antradar Downloads". antradar.com. 2023-11-24. Archived from the original on 2023-11-29. Retrieved 2023-12-24.
39. ^ "Softaculous". www.softaculous.com. Retrieved 2024-04-12.
40. ^ "Releases". github.com. Archived from the original on 29 July 2017. Retrieved 10 June 2017.
41. ^ "Release 3.8.0 · laminas/laminas-mvc". GitHub. Retrieved 2025-06-19.
42. ^ "Release 12.19.3". 18 June 2025. Retrieved 22 June 2025.
43. ^ "Releases - UnionOfRAD/lithium". github.com. Retrieved 19 June 2025.
44. ^ "phalcon/cphalcon". github.com. Retrieved 2024-07-09.
45. ^ "Releases - popphp/popphp-framework". github.com. 2019-10-17. Archived from the original on 2020-10-20. Retrieved 2019-05-30.
46. ^ "PRADO PHP Framework". pradoframework.net. Retrieved 19 June 2025.
47. ^ "License of PRADO". pradosoft.com. 2013. Archived from the original on 2013-10-16. Retrieved 2013-10-16.
48. ^ "Stable Download". silverstripe.org. Retrieved 2024-11-21.
49. ^ "unix-world / Smart.Framework". github.com. Retrieved 2024-04-12.
50. ^ Potencier, Fabien (2025-05-29). "Symfony 7.3.0 released". Blog. symfony.com. Retrieved 2025-06-17.
51. ^ "Yii 2.0.52". yiiframework.com. Retrieved 2025-02-23.
52. ^ "bluebream 1.0". 18 January 2011. Retrieved 18 December 2020.
53. ^ "Release v18.10.0". 15 June 2024. Retrieved 2 February 2025.
54. ^ "Release 4.8.0".
55. ^ "Release 5.2.3". 10 June 2025. Retrieved 16 June 2025.
56. ^ "Release 0.115.13". 17 June 2025. Retrieved 18 June 2025.
57. ^ "Release 3.1.1". 13 May 2025. Retrieved 25 May 2025.
58. ^ "Python 2.7 release notes". Retrieved 18 December 2020.
59. ^ "Release 6.1". 10 June 2025. Retrieved 16 June 2025.
60. ^ "Release 23.0.0". 10 August 2024. Retrieved 22 August 2024.
61. ^ "Release 7.0.58". 17 June 2025. Retrieved 18 June 2025.
62. ^ "Release 0.8.1a". 9 May 2012. Retrieved 22 July 2018.
63. ^ "Release 1.0.2". 22 July 2015. Retrieved 22 July 2018.
64. ^ "Release 2.0.2". 25 August 2023. Retrieved 19 September 2023.
65. ^ "Release 6.5.1". 22 May 2025. Retrieved 1 June 2025.
66. ^ "Release 2.5.0". 18 February 2025. Retrieved 1 March 2025.
67. ^ "web2py Web Framework".
68. ^ "Change log". 9 September 2022. Retrieved 18 October 2022.
69. ^ "Padrino 0.14.4 release". Padrino. Retrieved 5 September 2019.
70. ^ "Release 8.0.2". 12 March 2025. Retrieved 31 March 2025.
71. ^ https://github.com/sinatra/sinatra/tags. `{{cite web}}`: Missing or empty `|title=` (help)
72. ^ "Introducing Grails Framework 6.2.2 Release". grails.org. Retrieved 2024-12-29.
73. ^ "The Opa Blog: Some great news on Opa". Blog.opalang.org. Archived from the original on 2013-02-28. Retrieved 2013-08-18.
74. ^ "OpenACS Home". openacs.org. Archived from the original on 2024-12-18. Retrieved 2024-12-30.
75. ^ "Releases · SeasideSt/Seaside · GitHub". GitHub. 25 October 2024. Archived from the original on 29 July 2017. Retrieved 19 July 2021.
76. ^ "Grails Plugin: Spring Security Core Plugin". Grails.org. 2012-04-06. Archived from the original on 2013-08-23. Retrieved 2013-08-18.
77. ^ "Grails Plugin: Apache Shiro Integration for Grails". Grails.org. 2012-04-11. Archived from the original on 2013-08-23. Retrieved 2013-08-18.
78. ^ "Installation - 4.x". book.cakephp.org. Archived from the original on 2025-01-20. Retrieved 2025-02-23.
79. ^ "Server Requirements — CodeIgniter 4 documentation". codeigniter.com. Retrieved 2025-02-23.
80. ^ "Language helper included, must activate & set desired language by parsing HTTP headers". Codeigniter.com. Archived from the original on 2012-11-08. Retrieved 2013-08-18.
81. ^ "Change Log : CodeIgniter User Guide". EllisLab, Inc. Archived from the original on 15 May 2015. Retrieved 19 March 2012.
82. ^ "Getting Started - Fat-Free Framework for PHP". fatfreeframework.com. Archived from the original on 2025-02-23. Retrieved 2025-02-23.
83. ^ "Requirements - FuelPHP Documentation". fuelphp.com. Archived from the original on 2020-11-26. Retrieved 2020-12-02.
84. ^ "Replacing nano.js in Gyroscope". antradar.com. 2014-05-20. Archived from the original on 2016-09-28. Retrieved 2015-08-20.
85. ^ "Kajona 6.2 shifts the focus to PHP 7". www.kajona.de. Archived from the original on 2020-01-18. Retrieved 2020-12-02.
86. ^ "Zend/Laminas Drops PHP support prior to 7.3". GitHub. Retrieved 2021-01-06.
87. ^ "Laravel - The PHP Framework For Web Artisans". laravel.com. Archived from the original on 2021-02-07. Retrieved 2022-04-23.
88. ^ "Phalcon v5.8 supports only PHP 8.0 and above".
89. ^ "PRADO PHP Framework". www.pradoframework.net. Archived from the original on 2022-05-26. Retrieved 2022-04-23.
90. ^ a b c d "PRADO QuickStart Tutorial". Pradosoft.com. Archived from the original on 2013-09-28. Retrieved 2013-08-18.
91. ^ "Server Requirements". docs.silverstripe.org. Archived from the original on 2022-12-21. Retrieved 2020-12-02.
92. ^ "Smart.Framework: a practical, modern and high performance PHP / JavaScript Framework for Web featuring Middlewares + MVC". GitHub. 2022-01-07. Archived from the original on 2022-04-23. Retrieved 2022-04-23.
93. ^ "Installing & Setting up the Symfony Framework (Symfony Docs)". symfony.com. Archived from the original on 2022-09-25. Retrieved 2022-09-25.
94. ^ "Download TYPO3 - get.typo3.org". get.typo3.org. Archived from the original on 2019-01-28. Retrieved 2020-12-02.
95. ^ "Getting Started: Installing Yii". Yii Framework. Retrieved 2020-12-02.
96. ^ "Initial Prototyping: Scaffolding | Building a Blog System Using Yii | Yii PHP Framework". Yiiframework.com. Archived from the original on 2013-07-24. Retrieved 2013-08-18.
97. ^ "invalid function (default/images)". Web2py.com. Archived from the original on 2019-03-28. Retrieved 2019-03-21.
98. ^ "URLRequest - Adobe ActionScript 3 (AS3 ) API Reference". Livedocs.adobe.com. 2013-07-01. Archived from the original on 2009-02-12. Retrieved 2013-08-18.
99. ^ "ScalaTest". ScalaTest. Archived from the original on 2013-11-05. Retrieved 2013-08-18.

*[v]: View this template
*[t]: Discuss this template
*[e]: Edit this template