Gutenberg is a part of [[Wordpress]] that allows creating sites without code and offering a WYSIWYG experience for clients. One of the significant ideals taught to me was that user experience on all sides, front and backend mater. Curating the developer experience affects the user experience. Affecting the admin experience affects the user experience. But a better Admin experience also affects the amount of time a client is willing to spend with you as a developer. Gutenberg has 5 main ways of allowing the user to curate the experience: From the [Curation Guide](https://github.com/WordPress/gutenberg/blob/trunk/docs/how-to-guides/curating-the-editor-experience/README.md) Block locking: how to restrict user interactions with specific blocks in the Editor for better content control Patterns: about creating and implementing predefined block layouts to ensure design and content uniformity theme.json: to configure global styles and settings for your theme using the theme.json file Filters and hooks: about the essential filters and hooks used to modify the Editor Disabling Editor functionality: about additional ways to selectively disable features or components in the Editor to streamline the user experience I'll go over each of them and how I implement them in my projects. ## Block Locking Block locking restricts an editors interaction with a block (and potentially it's children). This is useful for ensuring that a certain block is not edited, or that a certain block is not deleted. It can also restrict movement.