<p align="center">
<img alt="Plone Logo" width="200px" src="https://raw.githubusercontent.com/plone/.github/main/plone-logo.png">
</p>
<h1 align="center">
Plone Distribution: Intranet
</h1>
[![Built with Cookiecutter Plone Starter](https://img.shields.io/badge/built%20with-Cookiecutter%20Plone%20Distribution-0083be.svg?logo=cookiecutter)](https://github.com/collective/cookiecutter-plone-distribution/)
[![Black code style](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/ambv/black)
[![Code Analysis](https://github.com/collective/collective.ploneintranet/actions/workflows/code-analysis.yml/badge.svg)](https://github.com/collective/collective.ploneintranet/actions/workflows/code-analysis.yml)
[![Tests](https://github.com/collective/collective.ploneintranet/actions/workflows/tests.yml/badge.svg)](https://github.com/collective/collective.ploneintranet/actions/workflows/tests.yml)
## Why use Plone for an Intranet?
1. **Security**: Plone is widely known for its strong security. It is engineered with a focus on security at the core, which makes it an ideal choice for intranets that often require a high degree of security. The default configurations of Plone are inherently secure and regularly audited, which reduces the risk of common vulnerabilities.
2. **Content Management**: Plone provides powerful content management features. It allows users to create, manage, and publish content with ease. It also supports versioning, which means changes to the content can be tracked and reverted if necessary.
3. **User Management and Permissions**: Plone offers comprehensive user management with fine-grained permission control. This allows administrators to have precise control over who can view, edit, or publish content in different parts of the intranet.
4. **Customizability and Scalability**: Plone is highly customizable and can be scaled to fit the needs of both small and large organizations. This makes it a versatile solution that can grow with the organization.
5. **Workflow Management**: Plone supports the creation of complex workflow scenarios. This means you can implement approval processes, drafting states, and more, helping you ensure quality and oversight on your intranet content.
6. **Multilingual Support**: Plone has built-in support for multiple languages. This is particularly beneficial for multinational corporations or organizations with a diverse user base who need their intranet content in several languages.
7. **Integration Capabilities**: Plone can integrate with a wide variety of other systems, including databases, authentication systems, and other third-party services. This flexibility allows you to incorporate the intranet into your existing IT environment seamlessly.
8. **Open Source**: Finally, Plone is open source, which means you have the freedom to modify and adapt it to your specific needs. Moreover, it's backed by an active community that continuously works on updates, patches, and improvements.
## Features
This package provides a new Plone Distribution called "Plone Intranet (Volto UI)" that creates a simple Intranet.
The Intranet will require users to authenticate before being able to view any content.
### Authentication Options
During site creation, you could choose one of the available authentication methods:
* **Plone**: Default authentication method where users are created and stored in the Intranet database.
* **GitHub**: Setup OAuth2 authentication with GitHub.
* **Google**: Setup OAuth2 authentication with Google.
### Example content
The "Plone Intranet (Volto UI)" comes with the following content:
* **/images/**: Image bank with faceted navigation for images.
* **/news/**: Listing of News Items available on the Intranet.
## Using
## Docker Image
In your computer, create a new folder (i.e. `Intranet`) and copy the example [docker-compose.yml](./docker-compose.yml) into it:
```shell
mkdir Intranet
cd Intranet
curl https://raw.githubusercontent.com/collective/collective.ploneintranet/main/docker-compose.yml --output docker-compose.yml
```
Then start the stack with:
```shell
docker compose up -d
```
This command starts three containers:
* webserver: A Traefik router that acts as an ingress to this stack.
* frontend: Volto frontend for the intranet.
* backend: The Plone Intranet backend.
### Create the Intranet
To create the Plone site on the backend, visit the url: [http://intranet-admin.localhost](http://intranet-admin.localhost) and add a new Plone Intranet.
Please, keep the site_id as **Plone**, as the frontend container expects that value.
To test the GitHub authentication use the following values:
* consumer_key: **ee86d42b5c4bc4987818**
* consumer_secret: **6f3a390401470b26c847e0d7832bacec7f214a1c**
## In an existing Plone project
Add **collective.ploneintranet** as a dependency of your project.
## Contribute
- [Issue Tracker](https://github.com/collective/collective.ploneintranet/issues)
- [Source Code](https://github.com/collective/collective.ploneintranet/)
## License
The project is licensed under GPLv2.
# Contributors
- collective [collective@plone.org]
# Changelog
<!--
You should *NOT* be adding new change log entries to this file.
You should create a file in the news directory instead.
For helpful instructions, please see:
https://github.com/plone/plone.releaser/blob/master/ADD-A-NEWS-ITEM.rst
-->
<!-- towncrier release notes start -->
## 1.0.0a2 (2023-05-19)
### Bug fixes:
- Fix GHA Docker image release process [@ericof] #2
## 1.0.0a1 (2023-05-19)
### New features:
- Initial release. [ericof] #1
Raw data
{
"_id": null,
"home_page": "https://github.com/collective/collective.ploneintranet",
"name": "collective.ploneintranet",
"maintainer": "",
"docs_url": null,
"requires_python": ">=3.8",
"maintainer_email": "",
"keywords": "Python Plone CMS",
"author": "Plone Foundation",
"author_email": "collective@plone.org",
"download_url": "https://files.pythonhosted.org/packages/4f/74/b7c0adfc4d20417abbd9cd9d958007d5b6133f17843ad2f2abf8aa5b21b0/collective.ploneintranet-1.0.0a2.tar.gz",
"platform": null,
"description": "\n<p align=\"center\">\n <img alt=\"Plone Logo\" width=\"200px\" src=\"https://raw.githubusercontent.com/plone/.github/main/plone-logo.png\">\n</p>\n\n<h1 align=\"center\">\n Plone Distribution: Intranet\n</h1>\n\n[![Built with Cookiecutter Plone Starter](https://img.shields.io/badge/built%20with-Cookiecutter%20Plone%20Distribution-0083be.svg?logo=cookiecutter)](https://github.com/collective/cookiecutter-plone-distribution/)\n[![Black code style](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/ambv/black)\n[![Code Analysis](https://github.com/collective/collective.ploneintranet/actions/workflows/code-analysis.yml/badge.svg)](https://github.com/collective/collective.ploneintranet/actions/workflows/code-analysis.yml)\n[![Tests](https://github.com/collective/collective.ploneintranet/actions/workflows/tests.yml/badge.svg)](https://github.com/collective/collective.ploneintranet/actions/workflows/tests.yml)\n\n\n## Why use Plone for an Intranet?\n\n1. **Security**: Plone is widely known for its strong security. It is engineered with a focus on security at the core, which makes it an ideal choice for intranets that often require a high degree of security. The default configurations of Plone are inherently secure and regularly audited, which reduces the risk of common vulnerabilities.\n\n2. **Content Management**: Plone provides powerful content management features. It allows users to create, manage, and publish content with ease. It also supports versioning, which means changes to the content can be tracked and reverted if necessary.\n\n3. **User Management and Permissions**: Plone offers comprehensive user management with fine-grained permission control. This allows administrators to have precise control over who can view, edit, or publish content in different parts of the intranet.\n\n4. **Customizability and Scalability**: Plone is highly customizable and can be scaled to fit the needs of both small and large organizations. This makes it a versatile solution that can grow with the organization.\n\n5. **Workflow Management**: Plone supports the creation of complex workflow scenarios. This means you can implement approval processes, drafting states, and more, helping you ensure quality and oversight on your intranet content.\n\n6. **Multilingual Support**: Plone has built-in support for multiple languages. This is particularly beneficial for multinational corporations or organizations with a diverse user base who need their intranet content in several languages.\n\n7. **Integration Capabilities**: Plone can integrate with a wide variety of other systems, including databases, authentication systems, and other third-party services. This flexibility allows you to incorporate the intranet into your existing IT environment seamlessly.\n\n8. **Open Source**: Finally, Plone is open source, which means you have the freedom to modify and adapt it to your specific needs. Moreover, it's backed by an active community that continuously works on updates, patches, and improvements.\n\n## Features\n\nThis package provides a new Plone Distribution called \"Plone Intranet (Volto UI)\" that creates a simple Intranet.\n\nThe Intranet will require users to authenticate before being able to view any content.\n\n### Authentication Options\n\nDuring site creation, you could choose one of the available authentication methods:\n\n* **Plone**: Default authentication method where users are created and stored in the Intranet database.\n* **GitHub**: Setup OAuth2 authentication with GitHub.\n* **Google**: Setup OAuth2 authentication with Google.\n\n### Example content\n\nThe \"Plone Intranet (Volto UI)\" comes with the following content:\n\n* **/images/**: Image bank with faceted navigation for images.\n* **/news/**: Listing of News Items available on the Intranet.\n\n## Using\n\n## Docker Image\n\nIn your computer, create a new folder (i.e. `Intranet`) and copy the example [docker-compose.yml](./docker-compose.yml) into it:\n\n```shell\nmkdir Intranet\ncd Intranet\ncurl https://raw.githubusercontent.com/collective/collective.ploneintranet/main/docker-compose.yml --output docker-compose.yml\n```\n\nThen start the stack with:\n\n```shell\ndocker compose up -d\n```\n\nThis command starts three containers:\n\n* webserver: A Traefik router that acts as an ingress to this stack.\n* frontend: Volto frontend for the intranet.\n* backend: The Plone Intranet backend.\n\n### Create the Intranet\n\nTo create the Plone site on the backend, visit the url: [http://intranet-admin.localhost](http://intranet-admin.localhost) and add a new Plone Intranet.\n\nPlease, keep the site_id as **Plone**, as the frontend container expects that value.\n\nTo test the GitHub authentication use the following values:\n\n* consumer_key: **ee86d42b5c4bc4987818**\n* consumer_secret: **6f3a390401470b26c847e0d7832bacec7f214a1c**\n\n## In an existing Plone project\n\nAdd **collective.ploneintranet** as a dependency of your project.\n\n## Contribute\n\n- [Issue Tracker](https://github.com/collective/collective.ploneintranet/issues)\n- [Source Code](https://github.com/collective/collective.ploneintranet/)\n\n## License\n\nThe project is licensed under GPLv2.\n\n\n# Contributors\n\n- collective [collective@plone.org]\n\n\n# Changelog\n\n<!--\n You should *NOT* be adding new change log entries to this file.\n You should create a file in the news directory instead.\n For helpful instructions, please see:\n https://github.com/plone/plone.releaser/blob/master/ADD-A-NEWS-ITEM.rst\n-->\n\n<!-- towncrier release notes start -->\n\n## 1.0.0a2 (2023-05-19)\n\n\n### Bug fixes:\n\n- Fix GHA Docker image release process [@ericof] #2\n\n\n## 1.0.0a1 (2023-05-19)\n\n\n### New features:\n\n- Initial release. [ericof] #1\n\n\n",
"bugtrack_url": null,
"license": "GPL version 2",
"summary": "Plone Intranet configuration package.",
"version": "1.0.0a2",
"project_urls": {
"Homepage": "https://github.com/collective/collective.ploneintranet",
"PyPI": "https://pypi.python.org/pypi/collective.ploneintranet",
"Source": "https://github.com/collective/collective.ploneintranet",
"Tracker": "https://github.com/collective/collective.ploneintranet/issues"
},
"split_keywords": [
"python",
"plone",
"cms"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "a3829bcfb949e18e65fc7d97733c4d9ef25a2a9d7a67253502d755dbc7cff8ff",
"md5": "974efc6e924eadf77ca90ef8429039fd",
"sha256": "c7ef602abd9005c3c6975bf7fe616b24828f8dd72ef6595999150d3636eff15a"
},
"downloads": -1,
"filename": "collective.ploneintranet-1.0.0a2-py3-none-any.whl",
"has_sig": false,
"md5_digest": "974efc6e924eadf77ca90ef8429039fd",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.8",
"size": 579363,
"upload_time": "2023-05-19T15:15:01",
"upload_time_iso_8601": "2023-05-19T15:15:01.228061Z",
"url": "https://files.pythonhosted.org/packages/a3/82/9bcfb949e18e65fc7d97733c4d9ef25a2a9d7a67253502d755dbc7cff8ff/collective.ploneintranet-1.0.0a2-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "4f74b7c0adfc4d20417abbd9cd9d958007d5b6133f17843ad2f2abf8aa5b21b0",
"md5": "13e196c81978bdf789a6da5516ab0f5f",
"sha256": "b8f157501a034cf53e7242107b95e4bc7bb884160a91d6a7428cfb6f08827a8b"
},
"downloads": -1,
"filename": "collective.ploneintranet-1.0.0a2.tar.gz",
"has_sig": false,
"md5_digest": "13e196c81978bdf789a6da5516ab0f5f",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.8",
"size": 576759,
"upload_time": "2023-05-19T15:15:04",
"upload_time_iso_8601": "2023-05-19T15:15:04.101852Z",
"url": "https://files.pythonhosted.org/packages/4f/74/b7c0adfc4d20417abbd9cd9d958007d5b6133f17843ad2f2abf8aa5b21b0/collective.ploneintranet-1.0.0a2.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2023-05-19 15:15:04",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "collective",
"github_project": "collective.ploneintranet",
"travis_ci": false,
"coveralls": true,
"github_actions": true,
"requirements": [],
"lcname": "collective.ploneintranet"
}