@plone/volto v18.0.0
Volto
Introduction
Volto is a React-based frontend for content management systems, currently supporting three backend implementations: Plone, Guillotina and a NodeJS reference implementation.
Plone is a CMS built on Python with over 17 years of experience.
Plone has very interesting features that appeal to developers and users alike, such as customizable content types, hierarchical URL object traversing and a sophisticated content workflow powered by a granular permissions model. This allows you to build anything from simple websites to enterprise-grade intranets.
Volto exposes all these features and communicates with Plone via its mature REST API. Volto has the ability of being highly themable and customizable.
Volto also supports other APIs like Guillotina, a Python resource management system, inspired by Plone and using the same basic concepts like traversal, content types and permissions model.
Last but not least, it also supports a Volto Nodejs-based backend reference API implementation that demos how other systems could also use Volto to display and create content through it.
Quick Start
First get all the requirements installed on your system.
Prerequisites
- Node.js LTS (10.x)
- Python 2.7.x or
- Docker (if using the Plone/Guillotina docker images)
Create Volto App
Create a new Volto project by using the create-volto-app
utility.
It will bootstrap a Volto project in a folder of your choice with all the required boilerplate to start customizing your Volto site.
$ npm install -g yarn
$ npm install -g @plone/create-volto-app
$ create-volto-app myvoltoproject
$ cd myvoltoproject
Although we install and use yarn
, the create-volto-app
tool still needs to be
installed using npm -g
because yarn
has a different implementation of
global installs.
Bootstrap the Plone API backend
We recommend Plone as backend of choice for Volto.
You can bootstrap a ready Docker Plone container with all the dependencies and ready for Volto use:
$ docker run --rm -it -p 8080:8080 kitconcept/plone.restapi:latest
or as an alternative if you have experience with Plone and you have all the
dependencies installed on your system, you can use the supplied buildout in the
api
folder by issuing the command:
$ make build-backend
Start Volto
Once inside your Volto project folder:
$ yarn start
Browsing
Go to http://localhost:3000 in your browser.
Demo
You can try a Volto online demo in https://volto.kitconcept.com
Documentation
You can find the (beta) documentation in http://docs.voltocms.com
Training
A detailed training on how to create your own website using Volto is available as part of the Plone training docs at https://training.plone.org/5/volto/index.html.
Talks
Plone Conference Tokyo 2018
Rob Gietema / Víctor Fernández de Alba - Volto Extensibility Story
Víctor Fernández de Alba - Theming Volto
Timo Stollenwerk / Víctor Fernández de Alba / Ramon Navarro - Volto Case Studies
Timo Stollenwerk - Reinventing Plone, Roadmap to the Modern Web
Browser support
Volto works well with any modern (and updated) browser, including their mobile flavors: Chrome, Firefox, Safari, Edge.
We do not guarantee that browsers who were deprecated by their vendors (e.g. Internet Explorer 11) will be supported by Volto in the future.
Volto Development
For Volto development you need all the requirements already mentioned on the Quick Start section.
Checkout the Volto repository
$ git clone https://github.com/plone/volto.git
Install dependencies
$ yarn
Install a backend
Plone (recommended)
Either using a Docker image
$ docker run --rm -it -p 8080:8080 kitconcept/plone.restapi:latest
or running Plone on your machine (advanced), additional dependencies might be required only for Plone experienced integrators/developers. Check the Plone Installation Documentation.
$ cd api
$ ./bootstrap.sh
Guillotina (experimental)
It still doesn't support the full API/features that Plone provides.
$ docker-compose -f g-api/docker-compose.yml up -d
Run frontend
$ yarn start
Browsing
Browse to http://localhost:3000 in your browser.
Testing
$ yarn test
Releasing
For ease the release process, a package that helps with the process is
installed: release-it
.
https://www.npmjs.com/package/release-it
For using it and start a release you need to fulfill the requirements:
- Have permissions to push on master branch
- Have permissions on the @plone org on npmjs.com
- Have a environment variable (
GITHUB_TOKEN
) with a GitHub personal token to write the Release page on GitHub (https://www.npmjs.com/package/release-it#github-releases)
Then the command for release:
$ yarn release
a dry-release command for testing the output is also available:
$ yarn dry-release
Acceptance testing
Volto uses Cypress for browser-based acceptance testing.
Run acceptance tests (with the Plone backend):
$ yarn ci:cypress:run
Run acceptance tests (with the Guillotina backend):
$ yarn ci:cypress:run:guillotina
Writing new acceptance tests
When writing new acceptance tests you usually want to minimize the time it takes to run the tests.
To do so, start three individual terminal sessions for running the Plone backend, the Volto frontend and the acceptance tests.
Start the Plone backend:
$ yarn ci:start-api-plone
Start the Volto frontend:
$ RAZZLE_API_PATH=http://localhost:55001/plone yarn start
Open Cypress to run and develop the acceptance tests:
$ yarn cypress:open
Go to the cypress/integration
folder to see existing tests.
This directory is hot reloaded with your changes as you write the tests. For more information on how to write Cypress tests:
https://docs.cypress.io
Running the acceptance tests with Guillotina backend
If you want to use Guillotina as backend to run the tests you should run:
$ yarn ci:start-api-plone-guillotina
License
MIT License. Copyrights hold the Plone Foundation.
See LICENSE.md for details.
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
2 months ago
3 months ago
3 months ago
3 months ago
3 months ago
4 months ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
8 months ago
6 months ago
6 months ago
6 months ago
6 months ago
7 months ago
7 months ago
6 months ago
7 months ago
6 months ago
1 year ago
6 months ago
6 months ago
1 year ago
5 months ago
1 year ago
10 months ago
10 months ago
10 months ago
10 months ago
11 months ago
10 months ago
10 months ago
1 year ago
1 year ago
1 year ago
10 months ago
10 months ago
9 months ago
1 year ago
9 months ago
9 months ago
9 months ago
9 months ago
9 months ago
9 months ago
9 months ago
9 months ago
8 months ago
8 months ago
11 months ago
11 months ago
12 months ago
11 months ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
11 months ago
11 months ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
5 months ago
6 months ago
11 months ago
4 months ago
1 year ago
12 months ago
1 year ago
1 year ago
12 months ago
1 year ago
11 months ago
11 months ago
1 year ago
11 months ago
11 months ago
11 months ago
11 months ago
1 year ago
1 year ago
1 year ago
1 year ago
7 months ago
6 months ago
7 months ago
1 year ago
12 months ago
11 months ago
10 months ago
6 months ago
10 months ago
12 months ago
8 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
6 months ago
6 months ago
6 months ago
4 months ago
10 months ago
10 months ago
10 months ago
10 months ago
9 months ago
8 months ago
8 months ago
7 months ago
7 months ago
7 months ago
1 year ago
1 year ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
3 years ago
3 years ago
3 years ago
2 years ago
3 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago