Successfully reported this slideshow.
Your SlideShare is downloading. ×

Plone 6 - Volto: Past, Present and Future

Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Upcoming SlideShare
Actsheet10
Actsheet10
Loading in …3
×

Check these out next

1 of 81 Ad

More Related Content

Similar to Plone 6 - Volto: Past, Present and Future (20)

More from kitconcept GmbH (20)

Advertisement

Recently uploaded (20)

Plone 6 - Volto: Past, Present and Future

  1. 1. Víctor Fernández de Alba Timo Stollenwerk Plone 6 Volto : Past, Present, and Future
  2. 2. REMOTE
  3. 3. NUMBERS
  4. 4. IMPOSTER
  5. 5. RETROSPECTIVE
  6. 6. VOLTO
  7. 7. DECISIONS
  8. 8. COMPETITORS
  9. 9. CLASSIC CMS
  10. 10. MODERN CMS SOLUTIONS
  11. 11. STATIC SITE GENERATORS
  12. 12. HEADLESS CMS
  13. 13. VOLTO
  14. 14. Thanks
  15. 15. Most important milestone in Volt o this year? Critical Mass
  16. 16. What is Plone?
  17. 17. “Plone has evolved from being an standalone product to be a contract, the knowledge and wisdom that we, the Plone community, achieved during the last 20 years building a world class enterprise CMS”
  18. 18. “Implementations may change overtime, values do not” Plone Classic Plone REST API Volto Volto Guillotina Other frontend Other compatible API backend
  19. 19. “Through the freedom that they provide, Volto blocks are a foundation for innovation that enables Plone to step in line with the latest state of the art for web development.” @tiberiuichim
  20. 20. “We not only built a new UX and UI for Plone, but also a framework where to build new exciting things”
  21. 21. Design principle s https://docs.voltocms.com/design-principles/ Approachabilit y Developer experience firs t Customization and extensibility firs t Volto UI/UX is Pastanaga U I Do not overengineer thing s Each feature has only one way of doing it Frontend and backend are meant to be decouple d Focus on the UI/UX implementation and upcoming challenge s Semantic versioning
  22. 22. Volto, Today
  23. 23. Stats 203 release s 58 contributor s 1253 Pull request s 3024 commits Current release: Volto 10.3.0
  24. 24. Which areas is Plone 6 better than Plone 5 today? Blocks engin e Authoring experienc e Volto Dexterity Schema and Layout edito r Listing bloc k Direct access to the full JS/React ecosyste m Performanc e as a bonus, Volto still works with Plone 4 as API backend
  25. 25. Volto Tea m https://plone.org/community/volto-team Timo Stollenwer k Rob Gietem a Tiberiu Ichi m Alin Voine a Andrea Cecch i Piero Nicoll i Nicola Zambell o Giulia Ghisin i Víctor Fernández de Alba
  26. 26. Volto Early Adopters Meeting Monthly, last Friday of the mont h Open for everybody interested!
  27. 27. Volto 4.0. 0 (maturity release ) March 2020 Sidebar introduction and new mobile first toolba r New Object Browse r New blocks chooser and future proof blocks definition s Listing, TOC, Lead Image block s Internal improvements and library updates
  28. 28. Volto 4.0. 0 (maturity release ) March 2020 Tiberiu Ichim talk: Volto blocks development patterns Wednesday - 15:55 Improved blocks developer experience
  29. 29. Volto 4 to Volto 1 0 9 months ! March 2020 - December 2020 Multilingual suppor t Improvements to Contents vie w Unauthorised, Forbidden, NotFound improvement s and related HTTP proper responses
  30. 30. Volto 4 to Volto 1 0 9 months ! March 2020 - December 2020 Support for using a completely different CSS framework Nicola Zambello talk: Theming Volto without SemanticUI: is it possible? Wednesday - 15:00
  31. 31. Huge improvements in extensibility Nilesh Gulia talk: Volto: A journey towards personalisation Tuesday - 16:50 Volto 4 to Volto 1 0 9 months ! March 2020 - December 2020
  32. 32. New generato r Based on Yeoman create-volto-app will be deprecated (soon) @plone/generator-volt o npm install -g y o npm install -g @plone/generator-volt o yo @plone/volto
  33. 33. Add-on architecture Volto Add-on ProjectAdd-on … "addons": [ “@plone-collective/volto-myfancyaddon” ], package.json
  34. 34. Add-on architecture Volto Addon ProjectAddon … Development experience mrs.developer yarn add @plone-collective/volto-myfancyaddon
  35. 35. Add-on architecture Awesome Volt o https://github.com/collective/awesome-volto Volto Addon ProjectAddon …
  36. 36. Add-on architecture Volto Addon ProjectAddon … Alok Kumar talk: Building Volto Addons Tuesday - 17:30
  37. 37. Improvements in the shadowing engine export Icon from '@plone/volto/components/theme/Icon/Icon'; export Icon from ‘./theme/Icon/Icon'; Works for add-ons to o
  38. 38. Volto API Block Transforms Storage API Transform (Deserializer) Transform (Serializer) Inbound Outbound
  39. 39. API Block Transforms @adapter(IBlocks, IBrowserRequest ) @implementer(IBlockFieldDeserializationTransformer ) class TextBlockDeserializer(object): order = 100 block_type = "text" def __init__(self, context, request) : self.context = contex t self.request = reques t def __call__(self, block): entity_map = block.get("text", {}).get("entityMap", {} ) for entity in entity_map.values() : if entity.get("type") == "LINK" : href = entity.get("data", {}).get("href", "" ) entity["data"]["href"] = path2uid(context=self.context, link=href ) return bloc k
  40. 40. API Block Transforms @implementer(IBlockFieldSerializationTransformer) @adapter(IBlocks, IBrowserRequest) class ResolveUIDSerializer(object): order = 1 block_type = None def __init__(self, context, request): self.context = context self.request = request def __call__(self, value): for fi eld in ["url", "href"]: if fi eld in value.keys(): value[ fi eld] = uid_to_url(value.get( fi eld, "")) return value
  41. 41. Lazy load support Nilesh Gulia talk: Bundle splitting in Volto Monday - 16:50 import loadable from '@loadable/component'; export const EventView = loadable(() => import('@plone/volto/components/theme/View/EventView'), );
  42. 42. Volto Dexterity Schema and Layout editor
  43. 43. Volto Dexterity Schema and Layout editor Alin Voinea talk: Volto Dexterity Schema and Layout editor Tuesday - 18:10
  44. 44. Copy/Paste blocks Current page and between other page s Multiselection support
  45. 45. Page composition enhancements Object Browser widge t Relations widge t Link widget (soon)
  46. 46. Listing blocks Variations suppor t Removal of the listing container object from the results
  47. 47. Event type support Recurrence widget
  48. 48. Future
  49. 49. Slots Mix between Viewlets and Portlet s Evolution of the Plone/Mosaic Tiles concep t Inheritabl e Far more lightweight than Portlet s will contain block s Assigned statically and/or backend defined
  50. 50. Form builder Janina Hard talk: Form Block / Formbuilder Tuesday - 18:50
  51. 51. Slate adoption https://www.slatejs.org https://github.com/eea/volto-slate
  52. 52. Plone 6 install/migration tooling Buildout recipe s CLI suppor t Templates generato r Migration steps
  53. 53. Block Variations support Enhance existing blocks with • Different template s • Additional block data from the block definition
  54. 54. Showcase
  55. 55. https://forest.eea.europa.eu/
  56. 56. https://biodiversity.europa.eu/
  57. 57. http://www.stradanove.it/Coming soon!Coming soon!
  58. 58. Coming soon!
  59. 59. https://medice.com
  60. 60. https://jobfamilie.medice.de
  61. 61. https://studyguide.jyu.fi/2020
  62. 62. And one more thing… Albert Casado’s send his greetings … 😉
  63. 63. Style Guide

×