Skip to content
Closed
12,389 changes: 12,389 additions & 0 deletions _static/plone-dependencies.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/_static/plone-dependencies.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
3 changes: 2 additions & 1 deletion docs/index.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@

---
myst:
html_meta:
Expand Down Expand Up @@ -154,4 +155,4 @@ genindex
:hidden: true

training/index
```

109 changes: 109 additions & 0 deletions docs/overview/index.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
GNU nano 7.2 index.md
---
myst:
html_meta:
Expand All @@ -10,6 +11,92 @@ myst:
(overview-label)=


# Overview

Plone is a content management system (CMS) that is well-known for its user-friendly interface and robust security featu>
With Plone, even non-technical users can easily create and manage the content for a public website or intranet using on>
Plone's intuitive interface and comprehensive set of features make it a popular choice for businesses, governments, uni>

Plone has a long history and has been trusted by users around the world since its initial release on October 4, 2001.
Over the years, Plone has undergone many improvements and enhancements, making it a highly mature and stable CMS.
Additionally, Plone is supported by a strong community of users and developers who contribute to its ongoing success.

Plone has the maturity, stability, and reliability of an application maintained by open source developers with decades >

Lots of customizations can be made through-the-web, such as creating content types, themes, workflows, and much more.
A full file system based development workflow is possible and recommended for team work and deployment, backed by sourc>
[ Read 127 lines ]
^G Help ^O Write Out ^W Where Is ^K Cut ^T Execute ^C Location M-U Undo M-A Set Mark
^X Exit ^R Read File ^\ Replace ^U Paste ^J Justify ^/ Go T GNU nano 7.2 index.md
---
myst:
html_meta:
"description": "Plone 6 overview"
"property=og:description": "Plone 6 overview"
"property=og:title": "Plone 6 overview"
"keywords": "Plone 6, overview"
---

(overview-label)=


# Overview

Plone is a content management system (CMS) that is well-known for its user-friendly interface and robust security featu>
With Plone, even non-technical users can easily create and manage the content for a public website or intranet using on>
Plone's intuitive interface and comprehensive set of features make it a popular choice for businesses, governments, uni>

Plone has a long history and has been trusted by users around the world since its initial release on October 4, 2001.
Over the years, Plone has undergone many improvements and enhancements, making it a highly mature and stable CMS.
Additionally, Plone is supported by a strong community of users and developers who contribute to its ongoing success.

Plone has the maturity, stability, and reliability of an application maintained by open source developers with decades >

Lots of customizations can be made through-the-web, such as creating content types, themes, workflows, and much more.
A full file system based development workflow is possible and recommended for team work and deployment, backed by sourc>
[ Read 127 lines ]
^G Help ^O Write Out ^W Where Is ^K Cut ^T Execute ^C Location M-U Undo M-A Set Mark
^X Exit ^R Read File ^\ Replace ^U Paste ^J Justify ^/ Go T GNU nano 7.2 index.md
---
myst:
html_meta:
"description": "Plone 6 overview"
"property=og:description": "Plone 6 overview"
"property=og:title": "Plone 6 overview"
"keywords": "Plone 6, overview"
---

(overview-label)=


# Overview

Plone is a content management system (CMS) that is well-known for its user-friendly interface and robust security featu>
With Plone, even non-technical users can easily create and manage the content for a public website or intranet using on>
Plone's intuitive interface and comprehensive set of features make it a popular choice for businesses, governments, uni>

Plone has a long history and has been trusted by users around the world since its initial release on October 4, 2001.
Over the years, Plone has undergone many improvements and enhancements, making it a highly mature and stable CMS.
Additionally, Plone is supported by a strong community of users and developers who contribute to its ongoing success.

Plone has the maturity, stability, and reliability of an application maintained by open source developers with decades >

Lots of customizations can be made through-the-web, such as creating content types, themes, workflows, and much more.
A full file system based development workflow is possible and recommended for team work and deployment, backed by sourc>
[ Read 127 lines ]
^G Help ^O Write Out ^W Where Is ^K Cut ^T Execute ^C Location M-U Undo M-A Set Mark
^X Exit ^R Read File ^\ Replace ^U Paste ^J Justify ^/ Go T---
myst:
html_meta:
"description": "Plone 6 overview"
"property=og:description": "Plone 6 overview"
"property=og:title": "Plone 6 overview"
"keywords": "Plone 6, overview"
---

(overview-label)=


# Overview

Plone is a content management system (CMS) that is well-known for its user-friendly interface and robust security features.
Expand Down Expand Up @@ -125,3 +212,25 @@ Similarly, to develop for the new React frontend, you need to have some experien

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).
Our trainings are more verbose and contain extra clarification and examples.
## Dependency Visualization

To better understand the relationships between Plone’s Python packages,
a dependency graph was generated using the following tools:

- `pipdeptree`
- `pipforester`
- `graphviz`

This visualization helps identify direct and indirect dependencies,
as well as cyclic dependencies, between core Plone packages and their
dependencies. It can be useful for contributors who want to explore
Plone’s internal package structure or analyze dependency complexity.
```{figure} /_static/images/plone-dependencies.svg
:alt: Plone Python dependency graph
:width: 100%

Dependency graph of Plone Python packages generated using
`pipdeptree` and `pipforester`. Cyclic dependencies are detected
and handled automatically.


56 changes: 56 additions & 0 deletions icons.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,56 @@
# Icons in Plone 6 Classic UI

- Bootstrap Icons
- SVG Inline Icons
- Iconresolver


# Bootstrap Icons

Bootstrap is the default CSS Framework in Plone 6. We decided to use it's icons as well. Check out all available Icons:

https://icons.getbootstrap.com/

Icons are shipped via plone.staticresources. Check out the [package.json](https://github.com/plone/plone.staticresources/blob/master/package.json) of the package to get the actual version of the icons in Plone.


# Registration

* Icons are registered in Plone's registry
* Override of icons via xml
* [Bootstrap Icons](https://github.com/plone/plone.staticresources/blob/master/src/plone/staticresources/profiles/default/registry/icons_bootstrap.xml)
* [Contenttypes](https://github.com/plone/plone.staticresources/blob/master/src/plone/staticresources/profiles/default/registry/icons_contenttype.xml)
* [Plone UI](https://github.com/plone/plone.staticresources/blob/master/src/plone/staticresources/profiles/default/registry/icons_plone.xml)


# Customization

* Add custom icons
* Override some of the icons
* TODO


# Icon Font

* TODO
* Setup profile to install icon font
* Usage as known from e.g. Font Awesome


# Iconresolver

## Get Icon URL

URL method of @@icons view returns the actual URL to the SVG icon. This can be used e.g. in an img tag.

```
<img src="" tal:attributes="src python:icons.url('alarm')" class="custom-class" alt="foo" />
```

## Get Icon Tag

Tag method is used with tal:replace and returns an entire inline SVG image. tag_class and tag_alt is used to pass in custom classes and an alt text.

```
<tal:icon tal:replace="structure python:icons.tag('archive', tag_class='custom-class', tag_alt='foobar')" />
```
1 change: 1 addition & 0 deletions index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@

8 changes: 8 additions & 0 deletions theming/barceloneta/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
# Plone Classic UI Theming based on Barceloneta

* TODO
* SCSS
* Colors, fonts and sizes via variable changable
* Properties for shadows, rounded corners, gradients, etc.
* plonetheme.barceloneta npm package for includes
* bobtemplates.plone template
3 changes: 3 additions & 0 deletions theming/basics/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
# Plone Classic UI Theme Add-On

Create a filesystem package to keep an installable theme for Plone 6 Classic UI.