Repository inventory

codesyntax/plone-expert-developer

Skills indexed from this repository, with install-style signals scoped to the repo.
1 skills3 GitHub stars0 weekly installsGitHubOwner profile

Overview

This skill provides expert guidance for Plone 6 backend and Volto (React) frontend development. It focuses on practical, reproducible workflows: generators, plone.api, plone.restapi, Volto blocks, and deployment patterns. Advice follows community standards and enforces Plone 6+ conventions.

How this skill works

I inspect your goal and map it to the appropriate generator workflow (uvx cookieplone, plonecli create/add) using mrbob.ini files to ensure non-interactive, repeatable scaffolding. For frontend work I default to Volto: create add-ons, blocks, schema, and schema enhancers, and wire services to plone.restapi. I enforce best practices like using plone.api, code formatters, behavior-first schema decisions, and clean git state before generation.

When to use it

  • Starting a new Plone 6 project or add-on and you want a reproducible scaffold.
  • Building or extending backend features: content types, behaviors, services, control panels, upgrade steps.
  • Creating Volto add-ons, custom blocks, block variations, or schema enhancers.
  • Exposing REST endpoints for Volto instead of browser views.
  • Preparing deployment or CI for a Plone + Volto stack.

Best practices

  • Always assume Plone 6+ with Python 3.x and default to Volto for the frontend.
  • Use uvx cookieplone for new projects and plonecli with mrbob.ini for non-interactive generation.
  • Keep git clean: commit or stash changes before running any plonecli add commands.
  • Prefer existing behaviors over adding new schema fields; consult the Behavior Catalog first.
  • Use plone.api for backend operations and run black, flake8, prettier, and eslint for code quality.

Example use cases

  • Generate a new Volto-first Plone project with uvx cookieplone and automated options for CI and Ansible.
  • Add a new Dexterity container type using plonecli add content_type with mrbob.ini variables and default to Container base class.
  • Create a plone.restapi service via plonecli add restapi_service and consume it from a Volto add-on service.
  • Build a Volto block with schema, View, and optional Edit + sidebar, then register it via applyConfig in the add-on index.
  • Implement a behavior using plonecli add behavior and enable it on a content type instead of modifying schema directly.

FAQ

Yes, but Volto is the default. If you explicitly request Classic UI, I will provide Classic-specific generators and guidance (Diazo themes, browser views, viewlets, portlets).

Can I create generators interactively?

No. I require non-interactive generation using mrbob.ini files to ensure reproducibility and allow automation.

1 skills

More from this maintainer
Other repositories and skills published under the same GitHub owner.
Skills library
Jump back to the full directory or explore grouped topics.
Built by
VeilStrat
AI signals for GTM teams
© 2026 VeilStrat. All rights reserved.All systems operational