Anticode Open builder

How to let a client update their own website without breaking the design

Separate what changes from what doesn't. The layout, headings and design stay as you built them; the content that changes every week or month (menu items, news posts, projects, team members, events) goes into a structured list the client edits like a form. They can't break a page by adding a dish, and you don't get an email every time the soup changes.

Updated · By the Anticode team

Find the content that really changes

Sit down with the client and go through the site section by section, asking one question: how often does this change, and who changes it? Most sites split cleanly.

Typical split between fixed and changing content
ContentChangesBest home
Headline, about text, services overviewOnce or twice a yearThe page itself, edited by you or in a visual editor
Menu, price list, class timetableWeekly to monthlyA collection
News, offers, announcementsWhenever there's newsA collection with a date field
Projects, portfolio pieces, case studiesEvery few weeksA collection with an image field
Team membersWhen people join or leaveA collection
Opening hoursSeasonallyThe page, with a reminder to check

Anything in the "collection" column is a list of similar items with the same parts. That's the signal: if you can describe one item as a set of fields (name, price, description, photo), it belongs in a collection.

Design the fields like a form

The client will see each field as a box to fill in, so design them for the person, not the database.

  • Use the client's words for labels: "Dish", "Price", "Allergens", not "title", "amount", "meta".
  • Mark only the essentials as required. A required photo on every news post means posts that never get written.
  • Pick the narrowest type: a number for prices, a date for events, so a typo can't turn a price into text.
  • Keep rich text for the one long field, such as a post's body, where headings and links are useful.
  • Leave out fields nobody fills. Each empty optional field is a question the client has to think about.

Set it up with Anticode collections

  1. Open the project in the dashboard and choose Create collection. The data page lists the project's Collections down the side.
  2. Pick a starting point under Start from: Blog posts, Team or Products each come with suitable fields, and Just a title starts almost blank.
  3. Adjust the fields. Each has a label, a key and a type: text, rich text in Markdown, number, date, image URL, or a reference to another collection. Tick Required only where it matters.
  4. Add two or three real entries yourself, so the client has examples to copy.
  5. Check the published pages. A collection is served as /<collection>/, and each entry at /<collection>/<slug> on the site, so news posts or projects get their own addresses.
  6. Show the client how to add, edit and delete an entry, then watch them do one without help.

Rich text fields take Markdown (bold, italics, links, lists and headings), and scripts or HTML typed into them are shown as plain text, so pasted code can't change the page. Image fields take an image address rather than an upload. App builds can read collections too, read-only, so a menu app or a portfolio app shows the same entries.

Hand over the rest of the editing

For occasional wording changes outside collections, Anticode's visual editor edits text in place, and Simple mode shows just the preview and visual editing, without the code and report tabs. Version history keeps the most recent saves, up to a number set by the plan, as versions you can preview and restore, which takes the fear out of a client's first edit. Write a one-page guide for the client covering where to log in, how to add each type of entry, what not to touch, and who to ask. The website handover checklist covers the rest of the handover.

Common mistakes

  • Making everything editable. Clients rarely want to edit the layout; giving them the option mostly gives them ways to break it.
  • One giant rich-text field per page. It's flexible for a week and inconsistent for ever after.
  • No examples. An empty collection is intimidating; two good entries teach the format.
  • Forgetting who owns the account. Projects can't be transferred between separate Anticode accounts, so decide at the start whose account the site lives in.

Questions people ask

What is a CMS collection?

A list of items with the same fields, such as menu dishes or news posts. The site's design decides how they look; the client only fills in the fields.

How do I stop a client breaking their website?

Give them collections for the content that changes and keep the layout out of their way. Version history means any mistake on the page can be rolled back.

Can my client post news on their website?

Yes, as entries in a news collection with a title, date and body. Each post gets its own page under the collection's address.