Skip to content

Commit 2764ffe

Browse files
committed
Merge branch '6-dev' into actions
2 parents 2a4e147 + 3127045 commit 2764ffe

File tree

4 files changed

+84
-54
lines changed

4 files changed

+84
-54
lines changed

docs/overview/history.md

Lines changed: 0 additions & 28 deletions
This file was deleted.

docs/overview/index.md

Lines changed: 82 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -9,64 +9,122 @@ myst:
99

1010
(overview-label)=
1111

12+
1213
# Overview
1314

14-
````{todo}
15-
This page needs content.
16-
```{seealso}
17-
[Issue #1352](https://github.com/plone/documentation/issues/1352)
18-
```
19-
````
15+
Plone is a content management system (CMS) that is well-known for its user-friendly interface and robust security features.
16+
With Plone, even non-technical users can easily create and manage the content for a public website or intranet using only a web browser.
17+
Plone's intuitive interface and comprehensive set of features make it a popular choice for businesses, governments, universities, and any organization that needs a reliable and easy-to-use CMS.
18+
19+
Plone has a long history and has been trusted by users around the world since its initial release on October 4, 2001.
20+
Over the years, Plone has undergone many improvements and enhancements, making it a highly mature and stable CMS.
21+
Additionally, Plone is supported by a strong community of users and developers who contribute to its ongoing success.
22+
23+
Plone has the maturity, stability, and reliability of an application maintained by open source developers with decades of experience, while continually evolving and adapting to modern technology.
2024

21-
(overview-2-label)=
25+
Lots of customizations can be made through-the-web, such as creating content types, themes, workflows, and much more.
26+
A full file system based development workflow is possible and recommended for team work and deployment, backed by source code repositories.
27+
Plone can be extended and used as a framework on which to build custom CMS-like solutions.
2228

23-
## Key concepts of Plone
29+
Plone works as a:
2430

31+
- Full-featured server-side rendered HTML CMS.
32+
- React-based frontend for editing and viewing content, backed by a server with a REST API.
33+
- Headless CMS server with a REST API, allowing a developer to build a custom frontend with their chosen technology.
2534

2635
(overview-3-label)=
2736

28-
### Web content management system
37+
## Key benefits
2938

39+
Security is built into Plone's architecture from the ground up.
40+
Plone offers fine-grained permission control over content and actions.
3041

31-
(overview-4-label)=
42+
Plone is easy to set up compared to other CMSs in its category, extremely flexible, and provides you with a system for managing web content that is ideal for project groups, communities, websites, extranets, and intranets.
3243

33-
### Add-ons
44+
- **Plone empowers content editors and web application developers.**
45+
The Plone Team includes usability experts who have made Plone easy and attractive for content managers to add, update, and maintain content.
3446

47+
- **Plone is international.**
48+
The Plone interface has more than 35 translations, and tools exist for managing multilingual content.
3549

36-
(overview-5-label)=
50+
- **Plone follows standards and is inclusive.**
51+
Plone carefully follows standards for usability and accessibility.
52+
Plone is compliant with WCAG 2.1 level AA and aims for ATAG 2.0 level AA.
3753

38-
### Traditional server side rendered HTML pages
54+
- **Plone is open source.**
55+
Plone is licensed under the GNU General Public License, the same license used by Linux.
56+
This gives you the right to use Plone without a license fee, and to improve upon the product.
3957

58+
- **Plone is supported.**
59+
There are over two hundred active developers in the Plone Development Team around the world, and a multitude of companies that specialize in Plone development and support.
4060

41-
(overview-6-label)=
61+
- **Plone is extensible.**
62+
There is a multitude of add-on products for Plone to add new features and content types.
63+
In addition, Plone can be scripted using web standard solutions and open source languages.
4264

43-
### Headless CMS with JavaScript frontend through a REST API
65+
- **Plone is technology neutral.**
66+
Plone can interoperate with most relational database systems—both open source and commercial—and runs on many platforms, including Linux, Windows, macOS, and BSD.
4467

4568

46-
(overview-7-label)=
4769

48-
### Explain frontend-backend terms
70+
(overview-4-label)=
4971

72+
## High Level Overview for Developers
5073

51-
(overview-8-label)=
74+
Plone is a content management platform with its backend written in Python.
75+
It is built on top of the open source Zope web application server and development system.
76+
Plone makes use of the pluggable Zope Component Architecture (ZCA) to provide a highly modular and extensible system.
77+
Throughout its history, Plone has used server-side rendering to generate HTML-based content, with advanced resource management features for adding and bundling CSS and JavaScript.
78+
Additionally, Plone's use of a component architecture makes it easy to extend and customize, allowing users to create unique, feature rich websites that are tailored to their specific needs.
5279

53-
### Security
80+
With the release of Plone 6, you now have the option to choose from two different out-of-the-box supported configurations when setting up a new Plone website.
81+
The Python-based backend server in Plone can still be used alone to render content server-side and deliver HTML to the browser, a setup that is referred to in the Plone documentation as "Classic UI".
82+
This configuration has been supported by Plone since its initial release and is still available in the latest version of the platform.
83+
For container-based deployment, only the `plone-backend` image is required.
84+
It may be used as a base image, adding customizations, to make a derivative image.
5485

86+
The default and recommended configuration for new websites in Plone is the new React-based JavaScript frontend called "Volto".
87+
For this setup you still need to run the Python-based backend server, as well as enable the REST API, and update the configuration profile.
88+
These settings and profile are applied automatically when you select the {guilabel}`Create Plone Site` option in the Plone website creation form.
89+
In addition a separate NodeJS based frontend server will serve the JavaScript frontend resources and provide SSR with hydration.
90+
To deploy this setup using containers, you will need the `plone-frontend` image for the frontend server.
5591

56-
(overview-9-label)=
92+
Beginning with Plone 6, we now support two programming language stacks, one each for Python and JavaScript.
93+
The documentation has been rewritten, but for this first release you will find some repetition of concepts in the documentation structure.
94+
See, for example, the development setup and information on deployment options.
95+
It will take some time until we find and can implement the best structure to explain these new possibilities and the expansion of Plone's capabilities.
96+
97+
```{seealso}
98+
https://training.plone.org/mastering-plone/what_is_plone.html
99+
```
57100

58-
### Accessibility (a11y)
59101

102+
(overview-5-label)=
103+
## Deployment
60104

61-
(overview-10-label)=
105+
To run a public Plone website in production, you will also need to configure and run a reverse proxy (or ingress), arrange for SSL certificates (either from Let's Encrypt or manually), guarantee persistence of the content database, and arrange backups.
106+
This is the domain of systems administrators and modern developer-operations professionals.
107+
Our documentation contains setup examples for these services, yet requires that the reader have some generic experience and knowledge of these domains.
62108

63-
### Internationalization (i18n)
64109

110+
(overview-6-label)=
111+
## Good to know / What to know
112+
113+
One of the key benefits of the new React-based frontend for Plone 6 is that you can now customize and theme Plone extensively using HTML, CSS, and JavaScript using up-to-date frontend technologies without having to set up a local Python development environment.
114+
The Plone backend can be run on a local developer machine in a container.
115+
116+
Basic familiarity with programming in Python and managing Python modules and packages using `virtualenv` and `pip` is required to work on the backend code.
117+
We use `virtualenv` and {term}`mxdev` to manage the source installation of packages in Plone 6.
118+
119+
Similarly, to develop for the new React frontend, you need to have some experience with setting up NodeJS, using a tool like NVM (Node Version Manager) to isolate your setup, and familiarity with {term}`Yarn` and {term}`React`.
120+
121+
If you are looking for more study material on these technologies beyond the documentation, see and follow one or more [Plone Trainings](https://training.plone.org).
122+
Our trainings are more verbose and contain extra clarification and examples.
65123

66124

67125
```{toctree}
68126
:maxdepth: 2
69127
:hidden:
70128
71-
history
129+
72130
```

submodules/volto

Submodule volto updated 94 files

0 commit comments

Comments
 (0)