1253:
1726:
504:
418:
365:
559:) namespace. ZPT offers a very limited set of tools for conditional inclusion and repetition of XML elements. Consequently, the templates are usually quite simple, with most logic implemented in Python code. One significant advantage of ZPT templates is that they can be edited in most graphical HTML editors. ZPT also offers direct support for
777:
The goal of the project was to enable programmers to use Zope in order to expose arbitrary Python objects as model objects to the web without the need to make these objects fulfill particular behavior requirements. In Zope 2 there had been many behavior requirements to allow objects to participate in
550:
templating: Document
Template Markup Language (DTML) and Zope Page Templates (ZPT). DTML is a tag-based language that allows implementation of simple scripting in the templates. DTML has provisions for variable inclusion, conditions, and loops. However, DTML can be problematic: DTML tags interspersed
255:
object database. It is directly intended for enterprise Web application development using the newest development paradigms. Zope 3 is, however, not compatible with Zope 2, so Zope 2 applications do not run on Zope 3. It was originally intended to introduce a backwards-compatibility layer so that Zope
343:
The Zope
Foundation is an organization that promotes the development of the Zope platform by supporting the community that develops and maintains the relevant software components. The community includes both open source software, documentation and web infrastructure contributors, as well as business
1383:
In 1997, Jim Fulton (the CTO at Zope Corp) developed a technique he called "Object
Publishing", and implemented in a library called the Python Object Publisher (aka Bobo). The object publishing metaphor is found in many Python toolkits today; in other languages it's found only in crippled form, at
760:
The Zope 3 project started in
February 2001 as an effort to develop a new version of Zope as an almost complete rewrite, with the goal to retain the successful features of Zope 2 while trying to fix some of its shortcomings. The goal was to create a more developer-friendly and flexible platform for
1003:
As a result of the development of Zope 3 / BlueBream, there are now many independent Python packages used and developed as a part of BlueBream, and although many of these are usable outside of BlueBream, many are not. The Zope
Toolkit (ZTK) project was started to clarify which packages were usable
786:
The libraries underlying BlueBream have been evolving into a collection of useful libraries for web application development rather than a single, monolithic application server. BlueBream includes separate packages for interfaces, component architecture, HTTP server, publisher, Zope Object
Database
239:
What is now known as Zope 2 began with the merging of three separate software products β Bobo, Document
Template, and BoboPOS β into the Principia application server. At the behest of its largest investor, Opticality Ventures, Principia was re-released as free software under the name Zope in 1998.
1022:
In 2006 the Grok project was started by a number of Zope 3 developers who wanted to make Zope 3 technology more agile in use and more accessible to newcomers. Grok has since then seen regular releases and its core technology (Martian, grokcore.component) is also finding uptake in other Zope 3 and
551:
with HTML form non-valid HTML documents, and its use requires care when including logic into templates, to retain code readability. The use of DTML is discouraged by many leading Zope developers. ZPT is a technology that addresses the shortcomings of DTML. ZPT templates can be either well-formed
231:
under the name
Digital Creations, as a joint venture with InfiNet (a joint newspaper chain venture). The company developed a classified advertisement engine for the Internet. In 1997, the company became independently owned and private. The company's software engineers are led by CTO Jim Fulton.
1047:
As mentioned previously, Zope page templates are themselves XHTML documents, which means they can be viewed and edited using normal HTML editors or XHTML compliant tools (a big advantage compared to other template languages used for Web applications). Templates can also be checked for XHTML
740:β "magic" code β that just has to be there, and the built-in management interface is difficult to modify or replace. Zope 3 was a rewrite of the software that attempts to address these shortcomings while retaining the advantages of Zope that led to its popularity. BlueBream is based on a
1051:
However, these page templates are not meant to be rendered as is. Instead they are marked up with additional elements and attributes in special XML namespaces (see below). This additional information is used to describe how the page template should ultimately be processed.
45:
787:(ZODB), Zope Page Templates, I18N, security policy, and so on. The component architecture is used to glue these together. The component architecture is configured using a ZCML (Zope Configuration Markup Language), an XML based configuration file language.
811:. Besides the goal of developing software, sprints are also useful for geographically separated developers to meet in person and attracting new people to the project. They also serve as a way for the participants to learn from each other.
798:
development. Sprints are intensive development sessions when programmers, often from different countries, gather in one room and work together for a couple of days or even several weeks. During the sprints various practices drawn from
725:. It was created under the name "Zope 3", but the existence of two incompatible frameworks with the same name caused much confusion, and Zope 3 was renamed "BlueBream" in January 2010. BlueBream is distributed under the terms of the
542:
to objects using the containment hierarchy of such objects; methods are considered to be contained in their objects as well. Data can be stored in other databases as well, or on the file system, but ZODB is the most common solution.
765:, which allows the structuring of code into small, composable units with introspectable interfaces. The interfaces are supported by an interface package in order to provide the functionality of explicitly declared interfaces to the
782:
base classes and special attributes. BlueBream uses a model/view architecture, separating the presentation code from the problem domain code. Views and models are linked together by the component architecture.
1004:
outside BlueBream, and to improve the re-usability of the packages. Thus the Zope
Toolkit is a base for the Zope frameworks. Zope 2.12 is the first release of a web framework that builds on Zope Toolkit, and
259:
The existence of two incompatible Web frameworks called Zope has caused a lot of confusion. In response, in
January 2010, Zope 3 was renamed "BlueBream". "Zope" and "blue bream" are names of a kind of fish,
736:
Zope 2 has proven itself as a useful framework for Web applications development, but its use revealed some shortcomings. To name a few, creating Zope 2 products involves copying a lot of
748:. Although originally intended as a replacement for Zope 2, the Zope Component Architecture has instead been backported to Zope 2, starting with Zope 2.8. Many Zope platforms such as
256:
2 software would run on Zope 3. Instead a module known as Five introduced the new Zope 3 paradigms into Zope 2, although full compatibility isn't possible that way either.
200:
with disparate aims and principles, but sharing philosophy, people, and source code. Zope 2 is still the most widespread of these frameworks, largely thanks to the
752:
are going through the same type of piece-by-piece rewriting. The first production release of the new software, Zope X3 3.0.0, was released on November 6, 2004.
1367:
3172:
2627:
1860:
3197:
1031:
In late 2017, development began on Zope 4. Zope 4 is a successor to Zope 2.13, making many changes that are not backwards compatible with Zope 2.
3182:
1753:
1624:
3177:
2839:
1581:
1490:
185:, and their associated online community. Zope stands for "Z Object Publishing Environment", and was the first system using the now common
3167:
769:. The first production release of the software, Zope X3, was released on November 6, 2004. In January 2010 Zope 3 was renamed BlueBream.
344:
and organization consumers of the software platform. It manages the zope.org websites, an infrastructure for open source collaboration.
1351:
Zope also pioneered the idea of object publishing, in which a URL describes the method that should be called on a particular object.
3162:
3152:
1915:
1895:
1188:
This is a very cursory explanation of Zope Page Templates. The behavior of Zope Page Templates is almost completely described by a
3192:
1652:
3157:
1980:
560:
1258:
1443:
207:, which runs on Zope 2. BlueBream (earlier called Zope 3) is less widespread but underlies several large sites, including
2886:
1746:
1670:
3187:
2857:
2832:
1413:
567:
3070:
2995:
2160:
1371:
962:
675:
463:
127:
17:
2297:
1739:
894:
2881:
2805:
2781:
2761:
2533:
1762:
1287:
943:
745:
656:
444:
182:
172:
120:
2825:
2690:
1888:
920:
578:
2795:
2672:
2639:
2145:
1196:
872:
627:
556:
409:
91:
2747:
1227:
800:
1628:
2944:
1237:
570:
417:
241:
204:
186:
2097:
1696:
539:
228:
503:
2777:
2652:
2596:
2218:
2077:
1881:
1824:
1472:
1048:
compliance so you can be fairly confident that they will automatically expand into proper XHTML.
808:
2586:
1814:
814:
BlueBream is considered a stable framework, used on production projects worldwide, most notably
555:
documents or HTML documents, in which all special markup is presented as attributes in the TAL (
3060:
2680:
2601:
2556:
2272:
2130:
1829:
1789:
1589:
1494:
1397:
1271:
762:
741:
299:
1189:
219:
gained popularity in the Zope community as a minimalistic framework based on Zope principles.
2975:
2939:
2919:
2566:
2307:
2087:
1799:
248:
1610:
1515:
3111:
3045:
3015:
2970:
2914:
2698:
2606:
2571:
2423:
2232:
2082:
1948:
1834:
1804:
1017:
1005:
795:
523:
309:
252:
212:
2135:
1426:
The use of Zope has spread so quickly that many Pythonistas have looked to it as a Python
8:
2463:
2345:
2165:
1985:
979:
815:
761:
programming web applications than Zope 2 is. The project began with the development of a
726:
693:
481:
319:
208:
144:
30:
This article is about an application server platform. For the fish known as "Zope", see
3055:
3030:
2985:
2949:
2909:
2871:
2757:
2731:
2662:
2591:
2453:
2403:
2115:
2110:
1844:
1819:
1725:
1298:
1281:
722:
681:
535:
469:
216:
215:
was started as a more programmer-friendly framework, "Zope 3 for cavemen", and in 2009
178:
3080:
3020:
3005:
2801:
2483:
2478:
2355:
2350:
2018:
1963:
1535:
1409:
1405:
1318:
261:
1528:
1311:
1055:
Here are some basic examples. To conditionally include a particular element, like a
3101:
3025:
2934:
2498:
2428:
2302:
2041:
2033:
2023:
1656:
974:
950:
804:
749:
737:
688:
663:
476:
451:
233:
232:
PythonLabs, creators of Python, became part of the company in 2000 (Python founder
201:
139:
31:
1430:- a system so good that it naturally pushes Python into the development spotlight.
3126:
2175:
766:
926:
3050:
2703:
2448:
2200:
2140:
1451:
1266:
955:
668:
456:
175:
534:. This allows users to harness the advantages of object technologies, such as
3147:
3141:
3040:
2657:
2190:
2170:
1958:
1904:
1765:
967:
730:
197:
132:
1674:
744:
that makes it easy to mix software components of various origins written in
3010:
2312:
2237:
2155:
1943:
1938:
1336:
196:
Over the last few years, the Zope community has spawned several additional
2488:
2388:
2360:
2267:
2227:
2051:
1953:
1557:
791:
527:
1731:
3116:
3106:
2990:
2848:
2791:
2787:
2611:
2468:
2418:
2398:
2317:
2247:
2210:
2150:
1995:
1975:
1839:
1223:
840:
595:
531:
377:
190:
62:
52:
2817:
1008:
and BlueBream were set to have releases based on the ZTK during 2010.
990:
3000:
2924:
2904:
2718:
2513:
2408:
2222:
2195:
1144:
attribute as below. You can use Python to alter the href at runtime.
2980:
2965:
2929:
2726:
2708:
2551:
2546:
2473:
2277:
2242:
2125:
2120:
1784:
1779:
1170:"href python:'http://someurl.com/%s'%someobject"
364:
189:
publishing methodology for the Web. Zope has been called a Python
3075:
3065:
2767:
2561:
2503:
2443:
2438:
2413:
2383:
2292:
2287:
2282:
2105:
2069:
2059:
1990:
1933:
1873:
1794:
519:
1640:
Zope 3 is licensed under Zope Public License, Version 2.1 (ZPL).
3121:
3035:
2751:
2616:
2433:
2393:
2365:
2327:
2322:
2262:
2252:
2185:
2180:
2013:
1970:
1849:
1276:
330:
1140:
Finally, to introduce or replace values of attributes use the
155:
2876:
2576:
2518:
2508:
2493:
2005:
1809:
1293:
1233:
1210:
1203:
779:
704:
44:
2954:
2647:
2581:
2458:
2337:
2257:
1925:
1447:
574:
547:
193:, an application that helped put Python in the spotlight.
2771:
2523:
2375:
552:
1719:
492:
1516:"Zope Foundation Board of Directors meeting 2010-10-14"
717:
BlueBream is a rewrite by the Zope developers of the
1248:
1098:To control what appears inside an element, use the
778:the framework, which resulted in a large amount of
247:In November 2004, Zope 3 was released. Zope 3 is a
1697:"Changelog β Zope documentation 4.0 documentation"
1582:"1. Introduction β BlueBream v1.0b4 documentation"
369:Zope management interface in a Web browser window.
1625:"FAQ - General 5: What is the license of Zope 3?"
1192:, fixed on TAL, TALES, and METAL specifications:
3139:
1389:
1202:Template Attribute Language Expression Syntax (
1330:
1328:
1217:
2833:
1889:
1747:
1473:"Guido van Rossum Leaves Zope.com - Slashdot"
1209:Macro Expansion Template Attribute Language (
790:The Zope 3 project pioneered the practice of
3173:Python (programming language) web frameworks
1365:
1334:
240:Bobo, and therefore Zope, was the first Web
1611:"Zope.dev - zope Resources and Information"
1325:
227:The Zope Corporation was formed in 1995 in
2840:
2826:
1896:
1882:
1754:
1740:
1724:
502:
416:
363:
43:
1761:
1576:
1574:
1441:
1337:"At the Forge - Assessing Ruby on Rails"
3198:Software companies of the United States
2847:
1663:
1550:
1319:"Change log β Zope 5.8.6 documentation"
14:
3183:Software companies established in 1995
3140:
1571:
1042:
2821:
1877:
1735:
1361:
1359:
1063:attribute to the element as follows:
27:Open-source server software framework
3178:Software companies based in Virginia
1653:"Zope 3 wiki Component Architecture"
1395:
1368:"Comment on "Lisp and Productivity""
1259:Free and open-source software portal
522:is usually composed of objects in a
24:
3168:Free software programmed in Python
1903:
1370:. Joel on Software. Archived from
1356:
267:
25:
3209:
1711:
633:1.0 / January 18, 2011
546:Zope provides two mechanisms for
251:that preserves only the original
1251:
347:
3163:Free content management systems
3153:1995 establishments in Virginia
1689:
1645:
1617:
1603:
821:
2541:
1508:
1483:
1465:
1435:
1398:"18: Advanced Internet Topics"
900:2.0a1 / May 1, 2013
878:1.1.6 / May 1, 2013
13:
1:
3193:Web server software for Linux
1560:. pypi.python.org. 2011-01-18
1444:"Zope Is Python's Killer App"
1304:
1288:Web content management system
1039:Zope 5 was released in 2020.
772:
3158:Cross-platform free software
1671:"Zope 3 wiki SprintSchedule"
1655:. 9 May 2008. Archived from
755:
584:
579:enterprise resource planning
7:
2621:
2146:Remote Application Platform
1854:
1366:Philip J Eby (2003-12-11).
1244:
1218:Notable software using Zope
1197:Template Attribute Language
718:
610:; 20 years ago
557:Template Attribute Language
392:; 26 years ago
283:; 18 years ago
10:
3214:
1228:student information system
1015:
801:agile software development
222:
29:
3094:
2897:
2864:
2855:
2740:
2717:
2689:
2671:
2638:
2532:
2374:
2336:
2209:
2096:
2068:
2050:
2032:
2004:
1924:
1911:
1772:
1491:"BlueBream documentation"
1238:content management system
1034:
1026:
985:
973:
961:
949:
939:
919:
915:
893:
871:
867:
849:
839:
831:
699:
687:
674:
662:
652:
648:
626:
622:
604:
594:
571:content management system
513:
487:
475:
462:
450:
440:
436:
408:
404:
386:
376:
357:
325:
315:
305:
295:
277:
236:left Zope Corp in 2003).
205:content management system
150:
138:
126:
116:
112:
97:5.8.6 / 4 October 2023
90:
86:
71:
61:
51:
42:
3188:Web development software
1442:Jon Udell (2000-02-07).
1146:
1104:
1065:
1059:element, simply add the
530:, as is usual with most
229:Fredericksburg, Virginia
1477:developers.slashdot.org
1023:Zope 2 based projects.
1011:
809:test-driven development
99:; 11 months ago
902:; 11 years ago
880:; 11 years ago
855:; 14 years ago
763:component architecture
742:component architecture
635:; 13 years ago
1102:attribute like this:
566:Zope 2 underlies the
423:; 2 years ago
421:/ 9 September 2022
244:publishing solution.
2971:LiteSpeed Web Server
1018:Grok (web framework)
796:open source software
561:internationalization
524:Zope Object Database
310:Open-source software
173:free and open-source
2849:Web server software
2748:Application Express
1701:zope.readthedocs.io
1396:Lutz, Mark (2006).
1043:Zope page templates
980:Zope Public License
828:
727:Zope Public License
694:Zope Public License
591:
482:Zope Public License
354:
320:Zope Public License
274:
179:application servers
145:Zope Public License
39:
1677:on August 14, 2012
1586:bluebream.zope.org
1538:. 9 September 2022
1428:Killer Application
1402:Programming Python
1335:Reuven M. Lerner.
1282:Content management
1236:is an open source
1226:is an open source
853:June 26, 2010
826:
803:are used, such as
723:application server
682:application server
589:
470:application server
352:
272:
53:Original author(s)
37:
3135:
3134:
2815:
2814:
1871:
1870:
1190:template language
1001:
1000:
715:
714:
573:, as well as the
526:, not files on a
511:
510:
341:
340:
262:Ballerus ballerus
166:
165:
16:(Redirected from
3205:
2842:
2835:
2828:
2819:
2818:
2042:ColdBox Platform
1898:
1891:
1884:
1875:
1874:
1756:
1749:
1742:
1733:
1732:
1728:
1723:
1722:
1720:Official website
1705:
1704:
1693:
1687:
1686:
1684:
1682:
1673:. Archived from
1667:
1661:
1660:
1649:
1643:
1642:
1637:
1636:
1627:. Archived from
1621:
1615:
1614:
1607:
1601:
1600:
1598:
1597:
1588:. Archived from
1578:
1569:
1568:
1566:
1565:
1554:
1548:
1547:
1545:
1543:
1532:
1526:
1525:
1523:
1522:
1512:
1506:
1505:
1503:
1502:
1493:. Archived from
1487:
1481:
1480:
1469:
1463:
1462:
1460:
1459:
1450:. Archived from
1439:
1433:
1432:
1423:
1422:
1393:
1387:
1386:
1380:
1379:
1363:
1354:
1353:
1348:
1347:
1332:
1323:
1322:
1315:
1261:
1256:
1255:
1254:
1184:
1181:
1178:
1174:
1171:
1168:
1165:
1162:
1159:
1156:
1153:
1150:
1143:
1135:
1132:
1129:
1126:
1123:
1120:
1117:
1114:
1111:
1108:
1101:
1094:
1091:
1088:
1084:
1081:
1078:
1075:
1072:
1069:
1062:
1058:
997:
994:
992:
951:Operating system
935:
932:
930:
928:
910:
908:
903:
888:
886:
881:
863:
861:
856:
829:
825:
805:pair programming
738:boilerplate code
711:
708:
706:
664:Operating system
643:
641:
636:
618:
616:
611:
600:Zope Corporation
592:
588:
507:
506:
499:
496:
494:
452:Operating system
431:
429:
428:9 September 2022
424:
420:
400:
398:
393:
382:Zope Corporation
367:
355:
351:
337:
334:
332:
291:
289:
284:
275:
271:
249:complete rewrite
234:Guido van Rossum
162:
159:
157:
107:
105:
100:
82:
80:
67:Zope Corporation
57:Zope Corporation
47:
40:
36:
32:Abramis ballerus
21:
3213:
3212:
3208:
3207:
3206:
3204:
3203:
3202:
3138:
3137:
3136:
3131:
3090:
2893:
2860:
2851:
2846:
2816:
2811:
2741:Other languages
2736:
2713:
2685:
2667:
2634:
2528:
2370:
2332:
2205:
2092:
2064:
2046:
2028:
2000:
1920:
1907:
1902:
1872:
1867:
1768:
1760:
1718:
1717:
1714:
1709:
1708:
1695:
1694:
1690:
1680:
1678:
1669:
1668:
1664:
1651:
1650:
1646:
1634:
1632:
1623:
1622:
1618:
1609:
1608:
1604:
1595:
1593:
1580:
1579:
1572:
1563:
1561:
1558:"bluebream 1.0"
1556:
1555:
1551:
1541:
1539:
1534:
1533:
1529:
1520:
1518:
1514:
1513:
1509:
1500:
1498:
1489:
1488:
1484:
1471:
1470:
1466:
1457:
1455:
1440:
1436:
1420:
1418:
1416:
1394:
1390:
1377:
1375:
1364:
1357:
1345:
1343:
1333:
1326:
1317:
1316:
1312:
1307:
1257:
1252:
1250:
1247:
1240:that uses Zope.
1230:that uses Zope.
1220:
1186:
1185:
1182:
1179:
1176:
1172:
1169:
1166:
1163:
1160:
1157:
1154:
1151:
1148:
1141:
1138:
1137:
1133:
1130:
1127:
1125:"..."
1124:
1121:
1118:
1115:
1112:
1109:
1106:
1099:
1096:
1095:
1092:
1089:
1086:
1082:
1080:"..."
1079:
1076:
1073:
1070:
1067:
1060:
1056:
1045:
1037:
1029:
1020:
1014:
989:
931:/zopefoundation
925:
911:
906:
904:
901:
895:Preview release
889:
884:
882:
879:
859:
857:
854:
850:Initial release
845:Zope Foundation
824:
775:
767:Python language
758:
703:
644:
639:
637:
634:
614:
612:
609:
605:Initial release
587:
516:
501:
491:
432:
427:
425:
422:
396:
394:
391:
387:Initial release
372:
371:
370:
361:
350:
329:
287:
285:
282:
281:March 2006
273:Zope Foundation
270:
268:Zope Foundation
225:
171:is a family of
154:
108:
103:
101:
98:
78:
76:
72:Initial release
35:
28:
23:
22:
18:Zope Foundation
15:
12:
11:
5:
3211:
3201:
3200:
3195:
3190:
3185:
3180:
3175:
3170:
3165:
3160:
3155:
3150:
3133:
3132:
3130:
3129:
3124:
3119:
3114:
3109:
3104:
3098:
3096:
3092:
3091:
3089:
3088:
3083:
3078:
3073:
3068:
3063:
3058:
3053:
3051:Traffic Server
3048:
3043:
3038:
3033:
3028:
3023:
3018:
3013:
3008:
3003:
2998:
2993:
2988:
2983:
2978:
2973:
2968:
2963:
2960:
2957:
2952:
2947:
2942:
2937:
2932:
2927:
2922:
2917:
2912:
2907:
2901:
2899:
2895:
2894:
2892:
2891:
2890:
2889:
2879:
2874:
2868:
2866:
2862:
2861:
2856:
2853:
2852:
2845:
2844:
2837:
2830:
2822:
2813:
2812:
2810:
2809:
2799:
2785:
2775:
2765:
2755:
2744:
2742:
2738:
2737:
2735:
2734:
2729:
2723:
2721:
2715:
2714:
2712:
2711:
2706:
2701:
2695:
2693:
2687:
2686:
2684:
2683:
2677:
2675:
2669:
2668:
2666:
2665:
2660:
2655:
2650:
2644:
2642:
2636:
2635:
2633:
2632:
2624:
2619:
2614:
2609:
2604:
2599:
2594:
2589:
2584:
2579:
2574:
2569:
2564:
2559:
2554:
2549:
2544:
2538:
2536:
2530:
2529:
2527:
2526:
2521:
2516:
2511:
2506:
2501:
2496:
2491:
2486:
2481:
2476:
2471:
2466:
2461:
2456:
2451:
2446:
2441:
2436:
2431:
2426:
2421:
2416:
2411:
2406:
2401:
2396:
2391:
2386:
2380:
2378:
2372:
2371:
2369:
2368:
2363:
2358:
2353:
2348:
2342:
2340:
2334:
2333:
2331:
2330:
2325:
2320:
2315:
2310:
2305:
2300:
2295:
2290:
2285:
2280:
2275:
2270:
2265:
2260:
2255:
2250:
2245:
2240:
2235:
2230:
2225:
2215:
2213:
2207:
2206:
2204:
2203:
2198:
2193:
2188:
2183:
2178:
2173:
2168:
2163:
2158:
2153:
2148:
2143:
2138:
2133:
2128:
2123:
2118:
2113:
2108:
2102:
2100:
2094:
2093:
2091:
2090:
2085:
2080:
2074:
2072:
2066:
2065:
2063:
2062:
2056:
2054:
2048:
2047:
2045:
2044:
2038:
2036:
2030:
2029:
2027:
2026:
2021:
2016:
2010:
2008:
2002:
2001:
1999:
1998:
1993:
1988:
1983:
1978:
1973:
1968:
1967:
1966:
1961:
1956:
1951:
1946:
1941:
1930:
1928:
1922:
1921:
1919:
1918:
1912:
1909:
1908:
1905:Web frameworks
1901:
1900:
1893:
1886:
1878:
1869:
1868:
1866:
1865:
1857:
1852:
1847:
1842:
1837:
1832:
1827:
1822:
1817:
1812:
1807:
1802:
1797:
1792:
1787:
1782:
1777:
1773:
1770:
1769:
1766:web frameworks
1759:
1758:
1751:
1744:
1736:
1730:
1729:
1713:
1712:External links
1710:
1707:
1706:
1688:
1662:
1659:on 9 May 2008.
1644:
1616:
1602:
1570:
1549:
1527:
1507:
1482:
1464:
1434:
1414:
1406:O'Reilly Media
1404:(3 ed.).
1388:
1355:
1324:
1309:
1308:
1306:
1303:
1302:
1301:
1296:
1291:
1285:
1279:
1274:
1269:
1267:Pylons project
1263:
1262:
1246:
1243:
1242:
1241:
1231:
1219:
1216:
1215:
1214:
1207:
1200:
1164:tal:attributes
1147:
1142:tal:attributes
1105:
1066:
1044:
1041:
1036:
1033:
1028:
1025:
1016:Main article:
1013:
1010:
999:
998:
987:
983:
982:
977:
971:
970:
965:
959:
958:
956:Cross-platform
953:
947:
946:
941:
937:
936:
923:
917:
916:
913:
912:
899:
897:
891:
890:
877:
875:
873:Stable release
869:
868:
865:
864:
851:
847:
846:
843:
837:
836:
833:
823:
820:
774:
771:
757:
754:
713:
712:
701:
697:
696:
691:
685:
684:
678:
672:
671:
669:Cross-platform
666:
660:
659:
654:
650:
649:
646:
645:
632:
630:
628:Stable release
624:
623:
620:
619:
606:
602:
601:
598:
586:
583:
515:
512:
509:
508:
489:
485:
484:
479:
473:
472:
466:
460:
459:
457:Cross-platform
454:
448:
447:
442:
438:
437:
434:
433:
414:
412:
410:Stable release
406:
405:
402:
401:
388:
384:
383:
380:
374:
373:
368:
362:
359:
358:
349:
346:
339:
338:
327:
323:
322:
317:
313:
312:
307:
303:
302:
297:
293:
292:
279:
269:
266:
224:
221:
198:web frameworks
164:
163:
152:
148:
147:
142:
136:
135:
130:
124:
123:
118:
114:
113:
110:
109:
104:4 October 2023
96:
94:
92:Stable release
88:
87:
84:
83:
75:July 1999
73:
69:
68:
65:
59:
58:
55:
49:
48:
26:
9:
6:
4:
3:
2:
3210:
3199:
3196:
3194:
3191:
3189:
3186:
3184:
3181:
3179:
3176:
3174:
3171:
3169:
3166:
3164:
3161:
3159:
3156:
3154:
3151:
3149:
3146:
3145:
3143:
3128:
3125:
3123:
3120:
3118:
3115:
3113:
3110:
3108:
3105:
3103:
3100:
3099:
3097:
3093:
3087:
3084:
3082:
3079:
3077:
3074:
3072:
3069:
3067:
3064:
3062:
3059:
3057:
3054:
3052:
3049:
3047:
3044:
3042:
3039:
3037:
3034:
3032:
3029:
3027:
3024:
3022:
3019:
3017:
3014:
3012:
3009:
3007:
3004:
3002:
2999:
2997:
2994:
2992:
2989:
2987:
2984:
2982:
2979:
2977:
2974:
2972:
2969:
2967:
2964:
2961:
2958:
2956:
2953:
2951:
2948:
2946:
2943:
2941:
2938:
2936:
2933:
2931:
2928:
2926:
2923:
2921:
2918:
2916:
2913:
2911:
2908:
2906:
2903:
2902:
2900:
2896:
2888:
2885:
2884:
2883:
2880:
2878:
2875:
2873:
2870:
2869:
2867:
2863:
2859:
2854:
2850:
2843:
2838:
2836:
2831:
2829:
2824:
2823:
2820:
2807:
2803:
2800:
2797:
2793:
2789:
2786:
2783:
2779:
2776:
2773:
2769:
2766:
2763:
2759:
2756:
2753:
2749:
2746:
2745:
2743:
2739:
2733:
2730:
2728:
2725:
2724:
2722:
2720:
2716:
2710:
2707:
2705:
2702:
2700:
2697:
2696:
2694:
2692:
2688:
2682:
2679:
2678:
2676:
2674:
2670:
2664:
2661:
2659:
2658:Ruby on Rails
2656:
2654:
2651:
2649:
2646:
2645:
2643:
2641:
2637:
2630:
2629:
2625:
2623:
2620:
2618:
2615:
2613:
2610:
2608:
2605:
2603:
2600:
2598:
2595:
2593:
2590:
2588:
2585:
2583:
2580:
2578:
2575:
2573:
2570:
2568:
2565:
2563:
2560:
2558:
2555:
2553:
2550:
2548:
2545:
2543:
2540:
2539:
2537:
2535:
2531:
2525:
2522:
2520:
2517:
2515:
2512:
2510:
2507:
2505:
2502:
2500:
2497:
2495:
2492:
2490:
2487:
2485:
2482:
2480:
2477:
2475:
2472:
2470:
2467:
2465:
2462:
2460:
2457:
2455:
2452:
2450:
2447:
2445:
2442:
2440:
2437:
2435:
2432:
2430:
2427:
2425:
2422:
2420:
2417:
2415:
2412:
2410:
2407:
2405:
2402:
2400:
2397:
2395:
2392:
2390:
2387:
2385:
2382:
2381:
2379:
2377:
2373:
2367:
2364:
2362:
2359:
2357:
2354:
2352:
2349:
2347:
2344:
2343:
2341:
2339:
2335:
2329:
2326:
2324:
2321:
2319:
2316:
2314:
2311:
2309:
2306:
2304:
2301:
2299:
2296:
2294:
2291:
2289:
2286:
2284:
2281:
2279:
2276:
2274:
2271:
2269:
2266:
2264:
2261:
2259:
2256:
2254:
2251:
2249:
2246:
2244:
2241:
2239:
2236:
2234:
2231:
2229:
2226:
2224:
2220:
2217:
2216:
2214:
2212:
2208:
2202:
2199:
2197:
2194:
2192:
2189:
2187:
2184:
2182:
2179:
2177:
2174:
2172:
2169:
2167:
2164:
2162:
2159:
2157:
2154:
2152:
2149:
2147:
2144:
2142:
2139:
2137:
2134:
2132:
2129:
2127:
2124:
2122:
2119:
2117:
2114:
2112:
2109:
2107:
2104:
2103:
2101:
2099:
2095:
2089:
2086:
2084:
2081:
2079:
2076:
2075:
2073:
2071:
2067:
2061:
2058:
2057:
2055:
2053:
2049:
2043:
2040:
2039:
2037:
2035:
2031:
2025:
2022:
2020:
2017:
2015:
2012:
2011:
2009:
2007:
2003:
1997:
1994:
1992:
1989:
1987:
1984:
1982:
1979:
1977:
1974:
1972:
1969:
1965:
1962:
1960:
1957:
1955:
1952:
1950:
1947:
1945:
1942:
1940:
1937:
1936:
1935:
1932:
1931:
1929:
1927:
1923:
1917:
1914:
1913:
1910:
1906:
1899:
1894:
1892:
1887:
1885:
1880:
1879:
1876:
1863:
1862:
1858:
1856:
1853:
1851:
1848:
1846:
1843:
1841:
1838:
1836:
1833:
1831:
1828:
1826:
1823:
1821:
1818:
1816:
1813:
1811:
1808:
1806:
1803:
1801:
1798:
1796:
1793:
1791:
1788:
1786:
1783:
1781:
1778:
1775:
1774:
1771:
1767:
1764:
1757:
1752:
1750:
1745:
1743:
1738:
1737:
1734:
1727:
1721:
1716:
1715:
1702:
1698:
1692:
1676:
1672:
1666:
1658:
1654:
1648:
1641:
1631:on 2009-08-22
1630:
1626:
1620:
1612:
1606:
1592:on 2010-01-22
1591:
1587:
1583:
1577:
1575:
1559:
1553:
1537:
1531:
1517:
1511:
1497:on 2010-01-22
1496:
1492:
1486:
1478:
1474:
1468:
1454:on 2000-03-02
1453:
1449:
1445:
1438:
1431:
1429:
1417:
1415:9780596554613
1411:
1407:
1403:
1399:
1392:
1385:
1374:on 2009-02-18
1373:
1369:
1362:
1360:
1352:
1342:
1341:Linux Journal
1338:
1331:
1329:
1320:
1314:
1310:
1300:
1297:
1295:
1292:
1289:
1286:
1283:
1280:
1278:
1275:
1273:
1270:
1268:
1265:
1264:
1260:
1249:
1239:
1235:
1232:
1229:
1225:
1222:
1221:
1212:
1208:
1205:
1201:
1198:
1195:
1194:
1193:
1191:
1145:
1103:
1074:tal:condition
1064:
1061:tal:condition
1053:
1049:
1040:
1032:
1024:
1019:
1009:
1007:
996:
988:
984:
981:
978:
976:
972:
969:
968:Web framework
966:
964:
960:
957:
954:
952:
948:
945:
942:
938:
934:
924:
922:
918:
914:
898:
896:
892:
876:
874:
870:
866:
852:
848:
844:
842:
838:
834:
830:
819:
817:
812:
810:
806:
802:
797:
793:
788:
784:
781:
770:
768:
764:
753:
751:
747:
743:
739:
734:
732:
731:free software
728:
724:
720:
710:
702:
698:
695:
692:
690:
686:
683:
679:
677:
673:
670:
667:
665:
661:
658:
655:
651:
647:
631:
629:
625:
621:
607:
603:
599:
597:
593:
582:
580:
576:
572:
569:
564:
562:
558:
554:
549:
544:
541:
537:
536:encapsulation
533:
529:
525:
521:
505:
498:
490:
486:
483:
480:
478:
474:
471:
467:
465:
461:
458:
455:
453:
449:
446:
443:
439:
435:
419:
413:
411:
407:
403:
389:
385:
381:
379:
375:
366:
356:
348:Zope versions
345:
336:
328:
324:
321:
318:
314:
311:
308:
304:
301:
298:
294:
280:
276:
265:
263:
257:
254:
250:
245:
243:
237:
235:
230:
220:
218:
214:
210:
206:
203:
199:
194:
192:
188:
184:
180:
177:
174:
170:
161:
153:
149:
146:
143:
141:
137:
134:
133:web framework
131:
129:
125:
122:
119:
115:
111:
95:
93:
89:
85:
74:
70:
66:
64:
60:
56:
54:
50:
46:
41:
33:
19:
3085:
2865:Most popular
2626:
2499:Silverstripe
2313:Sencha Touch
2238:Dojo Toolkit
1949:Dynamic Data
1859:
1700:
1691:
1679:. Retrieved
1675:the original
1665:
1657:the original
1647:
1639:
1633:. Retrieved
1629:the original
1619:
1605:
1594:. Retrieved
1590:the original
1585:
1562:. Retrieved
1552:
1540:. Retrieved
1536:"Change log"
1530:
1519:. Retrieved
1510:
1499:. Retrieved
1495:the original
1485:
1476:
1467:
1456:. Retrieved
1452:the original
1437:
1427:
1425:
1419:. Retrieved
1401:
1391:
1382:
1376:. Retrieved
1372:the original
1350:
1344:. Retrieved
1340:
1313:
1187:
1161:""
1139:
1097:
1054:
1050:
1046:
1038:
1030:
1021:
1002:
993:.readthedocs
933:/zopetoolkit
841:Developer(s)
827:Zope Toolkit
822:Zope Toolkit
813:
789:
785:
776:
759:
735:
729:and is thus
716:
596:Developer(s)
577:open source
565:
545:
538:. Zope maps
517:
378:Developer(s)
342:
258:
246:
238:
226:
195:
168:
167:
158:.readthedocs
117:Available in
63:Developer(s)
2887:IIS Express
2858:Comparisons
2489:ProcessWire
2389:CodeIgniter
2361:Mojolicious
2268:Knockout.js
2228:Backbone.js
2052:Common Lisp
1119:tal:content
1100:tal:content
991:zopetoolkit
832:Other names
532:web servers
528:file system
415:5.6.0
181:written in
3142:Categories
3117:NCSA HTTPd
3107:CERN httpd
2991:NaviServer
2792:JavaScript
2788:SproutCore
2612:TurboGears
2469:PHP-Fusion
2399:eZ Publish
2318:SproutCore
2248:Express.js
2211:JavaScript
2034:ColdFusion
1996:WebSharper
1916:Comparison
1845:TwistedWeb
1840:TurboGears
1681:August 17,
1635:2012-08-17
1596:2010-01-17
1564:2020-11-04
1542:18 October
1521:2010-01-17
1501:2010-01-17
1458:2011-06-04
1421:2010-03-27
1378:2010-03-26
1346:2010-03-26
1305:References
1224:SchoolTool
1128:/></
940:Written in
921:Repository
907:2013-05-01
885:2013-05-01
860:2010-06-26
773:Technology
653:Written in
640:2011-01-18
441:Written in
360:Screenshot
331:foundation
191:killer app
3071:WebSphere
3006:Passenger
3001:OpenResty
2996:NetWeaver
2925:GlassFish
2905:AOLserver
2719:Smalltalk
2542:BlueBream
2514:WordPress
2424:Gyroscope
2298:Prototype
2223:AngularJS
2196:WaveMaker
1964:Web Forms
816:Launchpad
705:bluebream
590:BlueBream
585:BlueBream
300:nonprofit
209:Launchpad
3061:WebLogic
2981:Mongrel2
2976:Mongoose
2966:Lighttpd
2940:Hiawatha
2930:Gunicorn
2920:Cherokee
2727:AIDA/Web
2709:Scalatra
2552:CubicWeb
2547:CherryPy
2474:PHP-Nuke
2404:Fat-Free
2346:Catalyst
2278:MooTools
2243:Ember.js
2176:Tapestry
2126:JHipster
2121:ICEfaces
1986:MonoRail
1785:CubicWeb
1780:CherryPy
1245:See also
1113:><
581:system.
3112:Mongrel
3095:Retired
3076:WildFly
3066:WEBrick
3056:Twisted
3046:Tornado
2945:iPlanet
2915:Caudium
2778:Phoenix
2768:OpenACS
2732:Seaside
2663:Sinatra
2653:Padrino
2607:Tornado
2597:Quixote
2592:Pyramid
2562:FastAPI
2504:Symfony
2479:Pop PHP
2464:Phalcon
2454:Midgard
2444:Laravel
2439:Laminas
2434:Joomla!
2414:FuelPHP
2384:CakePHP
2356:Maypole
2293:OpenUI5
2288:Node.js
2283:Next.js
2233:Closure
2219:Angular
2166:Stripes
2136:Mojarra
2106:AppFuse
2078:Servant
2070:Haskell
2060:CL-HTTP
1991:Umbraco
1934:ASP.NET
1835:Tornado
1825:Quixote
1820:Pyramid
1795:FastAPI
1299:Twisted
986:Website
975:License
905: (
883: (
858: (
792:sprints
756:History
700:Website
689:License
638: (
613: (
520:website
518:A Zope
488:Website
477:License
426: (
395: (
326:Website
288:2006-03
286: (
278:Founded
223:History
217:Pyramid
151:Website
140:License
102: (
79:1999-07
77: (
3122:Xitami
3041:Tomcat
3036:thttpd
2986:Monkey
2872:Apache
2806:Erlang
2782:Elixir
2762:Groovy
2758:Grails
2752:PL/SQL
2681:Rocket
2622:Zope 2
2617:web2py
2602:TACTIC
2587:Pylons
2557:Django
2534:Python
2394:Drupal
2366:WebGUI
2351:Dancer
2328:Vue.js
2323:Svelte
2273:Meteor
2263:jQuery
2253:Ext JS
2191:Wicket
2186:Vert.x
2181:Vaadin
2171:Struts
2161:Spring
2111:Grails
2019:Drogon
2014:CppCMS
1971:Blazor
1855:Zope 2
1850:web2py
1830:TACTIC
1815:Pylons
1790:Django
1776:Bottle
1763:Python
1412:
1290:(WCMS)
1277:web2py
1272:Django
1199:(TAL),
1035:Zope 5
1027:Zope 4
944:Python
927:github
746:Python
719:Zope 2
657:Python
514:Zope 2
500:
445:Python
316:Method
242:object
187:object
183:Python
121:Python
3031:Roxen
3026:Resin
3011:Paste
2962:JOnAS
2959:Jexus
2950:Jetty
2910:Caddy
2898:Other
2877:Nginx
2691:Scala
2577:Nevow
2567:Flask
2519:XOOPS
2509:TYPO3
2494:Qcodo
2484:PRADO
2429:Horde
2308:Remix
2303:React
2156:Sling
2088:Yesod
1959:Razor
1810:Nevow
1800:Flask
1384:best.
1294:Naaya
1234:Plone
1211:METAL
1204:TALES
1177:</
1087:</
780:mixin
750:Plone
707:.zope
568:Plone
495:.zope
333:.zope
306:Focus
202:Plone
3148:Zope
3127:Zeus
3086:Zope
3081:Yaws
3021:Puma
3016:POCO
2955:JEUS
2802:Yaws
2796:Ruby
2704:Play
2699:Lift
2673:Rust
2648:Merb
2640:Ruby
2628:more
2582:Pyjs
2572:Grok
2459:MODX
2419:Grav
2409:Flow
2338:Perl
2258:htmx
2151:Seam
2141:Play
2098:Java
2083:Snap
1944:AJAX
1939:Core
1926:.NET
1861:more
1805:Grok
1683:2012
1544:2022
1448:BYTE
1410:ISBN
1284:(CM)
1183:>
1173:>
1155:href
1149:<
1136:...
1134:>
1116:span
1107:<
1093:>
1085:...
1083:>
1068:<
1012:Grok
1006:Grok
963:Type
929:.com
807:and
794:for
721:web
709:.org
680:Web
676:Type
615:2004
608:2004
575:ERP5
548:HTML
540:URLs
497:.dev
468:Web
464:Type
397:1998
390:1998
353:Zope
335:.dev
296:Type
253:ZODB
213:Grok
169:Zope
156:zope
128:Type
38:Zope
3102:Boa
2935:H2O
2882:IIS
2772:Tcl
2631:...
2524:Yii
2449:liβ
2376:PHP
2131:JWt
2116:GWT
2006:C++
1981:BFC
1976:DNN
1954:MVC
1864:...
1175:...
1090:div
1071:div
1057:div
995:.io
835:ZTK
553:XML
493:www
176:web
160:.io
3144::
2201:ZK
2024:Wt
1699:.
1638:.
1584:.
1573:^
1475:.
1446:.
1424:.
1408:.
1400:.
1381:.
1358:^
1349:.
1339:.
1327:^
1213:).
1206:),
1131:h1
1110:h1
818:.
733:.
563:.
264:.
211:.
2841:e
2834:t
2827:v
2808:)
2804:(
2798:)
2794:-
2790:(
2784:)
2780:(
2774:)
2770:(
2764:)
2760:(
2754:)
2750:(
2221:/
1897:e
1890:t
1883:v
1755:e
1748:t
1741:v
1703:.
1685:.
1613:.
1599:.
1567:.
1546:.
1524:.
1504:.
1479:.
1461:.
1321:.
1180:a
1167:=
1158:=
1152:a
1122:=
1077:=
909:)
887:)
862:)
642:)
617:)
430:)
399:)
290:)
106:)
81:)
34:.
20:)
Text is available under the Creative Commons Attribution-ShareAlike License. Additional terms may apply.