Skip to content

Documentation Writing & languages

Choose a guide from the library.

Writing & languages

Write, connect and translate content while keeping drafts separate from public snapshots.

Discuss a field and mention a teammate

Field discussions keep feedback beside a saved entry. Each thread belongs to its environment, language, field and original saved revision. A discussion is separate from approval and publication.

How to use it

  1. Save the entry first. Choose Discuss beside a field, or Open discussions below the editor. Unsaved entry edits stay in the form; comments refer to saved content.
  2. Write plain-text feedback. Use @ Mention teammate, search by name or email prefix, and check the intended recipients. Typing a name alone does not notify anyone.
  3. Post the comment. Open an existing discussion to reply; use Resolve discussion when finished or Reopen discussion before another reply.
  4. Open Notifications with the bell in the Studio header. It shows mentions for the selected workspace and environment; each item identifies its language and saved version. Open discussion takes you to that language and thread. Mark read clears its unread state.
  5. Use Open, Resolved or All to find a discussion. A field-change label means saved data differs from its original context. Refresh discussions after a stale-revision error, then post when the saved context is correct.

Good practice

  • Check environment, language and saved version before responding.
  • Choose only teammates who need feedback; current discussion and draft permissions are checked when posting and reading.
  • Save or clear unsent entry edits and comments before leaving.

Avoid

  • Do not treat resolution as an approval or assume comments prevent publication.
  • Do not put credentials or private customer data in feedback. Comments are not exposed through delivery APIs.
  • Do not assume an in-app mention sends email or grants access.

Edit and save safely

The entry editor separates the form from publication, scheduling, language and entry details. A saved draft can be incomplete; publication applies stricter validation.

How to use it

  1. Choose a collection and open an entry, or create a new one.
  2. Fill labelled fields. Choice fields are local; reference/media alternatives load when their picker opens and support search plus Previous/Next.
  3. For multiple references, arrange the selected entries with their drag handles or Move up/Move down buttons. Selected entries stay visible across searches and pages. Reordering is an unsaved edit until Save draft; publish separately to change public delivery.
  4. Save draft. Read field-level validation messages if saving fails; your submitted values remain available for correction.
  5. If warned about unsaved changes before leaving, save or explicitly discard them. Use the Entry ID icon button to copy the stable identifier.

Good practice

  • Save before preview, review, scheduling or release selection; these workflows use saved revisions.
  • If another editor saved first, reload and reconcile rather than repeatedly submitting an old revision.

Avoid

  • Do not close the tab assuming unsaved form values have been published or backed up.
  • Do not assume reordering references changes the referenced entries themselves. The ordered list belongs to this entry; consuming apps decide how to display it.

Start with a content template

Content templates copy selected saved draft values into a new, independent entry. They belong to one environment and content type; they are different from model starters and shared component definitions.

How to use it

  1. Developers: save a default-language draft, open Content templates in the editor heading, name the template and choose included fields with checkboxes. Leave unique slugs and identifiers out, then Save template.
  2. Creators: open New entry, choose Content templates before editing, and Use template. Review the copied values, Save draft and publish separately when ready.
  3. To rename or replace a template, open a suitable saved entry, choose Update, review its name and fields, then Replace template snapshot. Remove asks for confirmation. Existing copies never change.

Good practice

  • Use descriptive names and review copied relationships. Current permissions, entry limits, singleton rules and publishing checks still apply.

Avoid

  • Do not expect translations, publication, review approvals, schedules or history to be copied. A changed schema/default language needs a new snapshot; unavailable linked resources can prevent use. Templates cannot overwrite an existing entry or unsaved edits.

Write structured rich text or Markdown

Markdown stores source text; rich text stores structured content with supported formatting and embedded resources. They have different rendering contracts.

How to use it

  1. Use the editor's supported formatting, links and embedded content controls for a rich-text field.
  2. Choose referenced entries and media through authorized pickers; save and inspect the result in your website.
  3. For Markdown fields, write Markdown source and ensure the website renders it safely.

Good practice

  • Keep headings in a meaningful hierarchy and use descriptive link text.

Avoid

  • Do not paste executable HTML or assume a website can display rich-text JSON without a renderer.

Understand translation visibility

An entry retains one ID across languages. Translated fields publish independently; shared fields are managed in the default language. Missing editor text stays blank even when delivery can fall back.

How to use it

  1. The Owner enables content languages in Workspace settings and chooses the fallback policy.
  2. Select a language in the collection or editor. Use the language visibility indicators to distinguish Missing, Authored, Published and Modified.
  3. Write and save the translated fields. Return to the default language to change shared values.
  4. Review and publish the selected language. A public default-language entry is required before an independent translation can be delivered.

Good practice

  • Review each language's status and preview its actual delivered result before launch.

Avoid

  • Do not treat fallback text as an authored translation or assume publishing English also publishes Spanish.

Inspect SEO and social previews

SEO and social cards are editorial previews of configured values. The consuming website remains responsible for emitting actual metadata.

How to use it

  1. Map the content type's supported SEO fields using the provided settings.
  2. Inspect title, description, image and fallback previews in the editor.
  3. Check the real website HTML and social-image behavior after integrating the metadata renderer.

Good practice

  • Use concise, accurate descriptions and publish referenced social images.

Avoid

  • A simulated search/social card cannot guarantee a crawler's final display or search ranking.

Open a private saved-draft website preview

Website preview runs in the actual consuming application. A short-lived one-use code is exchanged by that site's server; secret delivery credentials stay server-side.

How to use it

  1. An authorized preview manager configures a destination for a content type and language in Workspace settings → Website preview.
  2. The website developer installs the server-side preview integration and exact destination configuration.
  3. Save the entry, then choose Open website or Preview beside editor when enabled.
  4. For integrated websites, choose Preview beside editor, enable Click to edit text and images, then click a marked field or use Tab and Enter. Studio focuses the matching text input or image picker without discarding unsaved edits. Save draft refreshes the website; publishing remains separate.
  5. This first version targets top-level text and image fields in the current entry. The website developer opts in using @lemonadecms/client/preview and data-lemonade-field annotations. Unannotated sites keep ordinary saved-draft preview. Referenced entries and nested blocks use their normal editor controls.
  6. If Studio reconnects, your unsaved fields stay in the editor. Choose Reconnect preview to start a fresh, authorized website session. A stalled or expired frame also offers Reconnect preview; refreshing never extends a session or replays its one-use launch code. If embedded cookies are blocked, use Open website; click-to-edit requires the side-by-side frame.

Good practice

  • Keep preview routes private/no-store and verify the intended content environment.

Avoid

  • Do not expose secret keys in PUBLIC_ variables, browser bundles, URLs or screenshots. Unsaved values are excluded.
Need a hand? Check troubleshooting. Documentation describes the locally verified pilot; production qualification remains in progress.