diff --git a/docs/developer-guide/create-a-backend-add-on.md b/docs/developer-guide/create-a-backend-add-on.md new file mode 100644 index 000000000..b6927f835 --- /dev/null +++ b/docs/developer-guide/create-a-backend-add-on.md @@ -0,0 +1,21 @@ +--- +myst: + html_meta: + "description": "How to create a backend add-on" + "property=og:description": "How to create a backend add-on" + "property=og:title": "Create a backend add-on" + "keywords": "Plone 6, backend, add-on" +--- + +(create-a-backend-add-on-label)= + +# Create a backend add-on + +This section explains how a developer can create an {term}`add-on` for the Plone backend. +You will use a framework called {term}`GenericSetup` and a tool called {term}`Buildout`. + +```{note} +This section for Plone 6 is in the process of being written. +Until it is complete, Plone 5 documentation is the authoritative source. +{doc}`plone5:develop/addons/components/genericsetup` (Plone 5) +``` diff --git a/docs/developer-guide/create-a-distribution.md b/docs/developer-guide/create-a-distribution.md index d58e4f3bd..b1b7cafa6 100644 --- a/docs/developer-guide/create-a-distribution.md +++ b/docs/developer-guide/create-a-distribution.md @@ -19,10 +19,9 @@ For a conceptual guide, see {doc}`/conceptual-guides/distributions`. ``` -## Create a backend add-on +## Use a backend add-on -These instructions assume that you already have created a Plone backend add-on package, -and now you want to add a distribution to it. +These instructions assume that you have already {doc}`created a Plone backend add-on package `, and now you want to add a distribution to it. A Plone distribution exists inside a Python package that can be installed by `pip`. diff --git a/docs/developer-guide/index.md b/docs/developer-guide/index.md index 797edd0d7..08497c838 100644 --- a/docs/developer-guide/index.md +++ b/docs/developer-guide/index.md @@ -1,25 +1,94 @@ --- myst: html_meta: - "description": "Plone developer guide" - "property=og:description": "Plone developer guide" - "property=og:title": "Developer guide" - "keywords": "Plone 6, developer guide, development" + "description": "Plone development guide" + "property=og:description": "Plone development guide" + "property=og:title": "Development guide" + "keywords": "Plone 6, development guide, developer, development" --- -# Developer guide +# Development guide + +```{note} +This part of the documentation is under revision, consolidating documentation for development from its various locations into in one section. +Until then, you can use the [search feature](https://6.docs.plone.org/search.html?q=development). +You can also help with this effort, even if it is to report that something is missing, by [creating an issue](https://github.com/plone/documentation/issues/new?assignees=&labels=&projects=&template=new-issue-form.yml). +``` This part of the documentation provides information for how to develop in Plone. +This development guide points you, as a developer, to the appropriate resource. + + +## Tests + +Tests ensure that your project functions as expected, and that changes to the code base during development don't break anything. + + +### Volto + +- {doc}`Volto acceptance tests ` +- {doc}`Volto unit tests ` +- {ref}`testing-the-add-on-label` + + +### Classic UI ```{note} -This part of the documentation is under construction. -You can find documentation for development in various locations through the [search feature](https://6.docs.plone.org/search.html?q=development). -You can help consolidate all of development documentation here, even if it is to let us know what is missing, by [creating an issue](https://github.com/plone/documentation/issues/new?assignees=&labels=&projects=&template=new-issue-form.yml). +Classic UI testing for Plone 6 is in the process of being written. ``` +### Backend + +```{note} +Backend testing for Plone 6 is in the process of being written. +Until it is complete, Plone 5 documentation is the authoritative source for writing tests for the Plone backend. +``` + +- {doc}`Backend tests ` (Plone 5) + + +## Create an add-on + +- {doc}`create-a-backend-add-on` +- {doc}`/volto/development/add-ons/create-an-add-on-18` + + +## Create a Plone distribution + +{doc}`create-a-distribution` + + +## Create content types + +- {doc}`/backend/content-types/creating-content-types` +- {doc}`plone5:develop/plone/content/index` (Plone 5) + + +## Register views + +{doc}`plone5:develop/plone/views/index` (Plone 5) + + +## Register API services + +{doc}`backend/configuration-registry` + + +## {term}`ZCA` +% TODO: This is a mixture of conceptual and how-to guides. Move its parts where they belong and rewrite. +{doc}`plone5:develop/addons/components/index` (Plone 5) + + +## {term}`ZCML` +% TODO: This is a mixture of conceptual and how-to guides. Move its parts where they belong and rewrite. +{doc}`plone5:develop/addons/components/zcml` (Plone 5) + + ```{toctree} :maxdepth: 2 +:hidden: +create-a-backend-add-on create-a-distribution ``` diff --git a/docs/glossary.md b/docs/glossary.md index 41299fb25..3a21fe331 100644 --- a/docs/glossary.md +++ b/docs/glossary.md @@ -25,6 +25,10 @@ Buildout [Buildout](https://github.com/buildout/buildout/) is a Python-based tool for building and assembling applications from multiple parts, based on a configuration file. It was the most common way of installing Plone 3, 4, and 5, and can still be used with Plone 6. + Usage of Buildout in Plone appears in various places in this documentation. + For a history and extended usage of Buildout, you can refer to the Plone 4 Documentation's section on [Buildout](https://4.docs.plone.org/old-reference-manuals/buildout/). + The Plone community authored this reference manual, as Buildout's own documentation is suboptimal. + CMS Content Management System diff --git a/docs/i18n-l10n/translating-text-strings.md b/docs/i18n-l10n/translating-text-strings.md index 22d307e88..d69c4ec15 100644 --- a/docs/i18n-l10n/translating-text-strings.md +++ b/docs/i18n-l10n/translating-text-strings.md @@ -56,7 +56,7 @@ Information in the PO file headers is ignored. [`i18ndude`](https://pypi.org/project/i18ndude/) should be used to create a script which searches particular packages for translation strings. -If you have created your add-on using [bobtemplates.plone](https://pypi.org/project/bobtemplates.plone/), then you will already have a script `update.sh` inside your package and a script `update_locale` in your buildout to extract the messages from your code. +If you have created your add-on using [bobtemplates.plone](https://pypi.org/project/bobtemplates.plone/), then you will already have a script `update.sh` inside your package and a script `update_locale` in your {term}`buildout` to extract the messages from your code. After running that script, a new `domain.pot` file will be created in your `locales` directory where all the messages will be saved. @@ -273,7 +273,7 @@ This script hooks into the release process and builds the MO files for you. ### Installing i18ndude -The recommended method is to have {term}`i18ndude` installed via your [buildout](https://www.buildout.org/en/latest/). +The recommended method is to have {term}`i18ndude` installed via your buildout. Add the following to your `buildout.cfg`: