How-to guides
v0.0.2
Each how-to guide covers one task: build a page in the visual editor, add a form, translate a page, give a teammate access, redirect an old address, connect a model to the editor's Assistant, add the visual editor to your own host, and more.
Pick the guide for the job in front of you. The pages below show each one with a short summary.
- Build a page in the visual editor Create a Mishka CMS page in the visual editor: add sections and components, check each screen size, and publish it when it is ready.
- Add a form to a page Add a form to a page in the visual editor: place a form block, set its checks and success message, and decide where the answers go.
- Reuse work with snippets and design tokens Save a section as a snippet and insert it again, change a design token for the whole site, and set the options a component starts with.
- Share a draft and collect comments Copy a draft's shareable link so anyone can read it without signing in, then collect notes from your team in the editor's Review panel.
- Design the site layout Build a layout with a header and footer around the page content, publish it, and choose it for a page in the visual editor.
- Customize error pages Edit the 404, 500 and offline pages your site shows when a request fails, in the visual editor, and publish each status.
- Translate a page Create a translation of a Mishka CMS page in another language, translate it in the visual editor, and publish it at its own address.
- Set a site's languages and language URLs Set the languages a Mishka CMS site publishes in, choose its first language, and pick how public addresses name the language.
- Translate interface words with t() Wrap words in t() in a Mishka CMS template, then translate them per language on the Translations screen, with no deploy.
- Add a site and its domain Add a site to Mishka CMS as a master: set its name, domain and mode, check its runtime health, and switch it off or archive it later.
- Give a teammate access Create an account on the Users screen, pick the permission names it holds, and learn what the grant ceiling stops a site admin from handing out.
- Lock a page or post to members Limit a page, blog post or collection to accounts that hold a permission name, and see what signed-out and signed-in visitors get when they open it.
- Secure sign-in Set up an authenticator app and recovery codes, require two-step sign-in for admins, limit attempts, add a captcha and close ways into a site.
- Send email from your site Set up an email provider and sender for a Mishka CMS site, send a test email, and read the email history to find out why a message did not arrive.
- Upload and organize media Upload images, videos and documents to the Mishka CMS media library, sort them into folders, and use them on pages, share images and the site logo.
- Redirect an old address Send an old address to a new one with a Mishka CMS redirect rule: pick a status, see which rules are refused, and check the result with curl.
- Set a page's SEO and share card Set a page's title, description, share image and structured data in the Mishka CMS editor, and learn when its share card is drawn and redrawn.
- Add custom CSS, JS hooks and components Add your own CSS, JavaScript hooks and components under Runtime, attach them in the visual editor, and check that they built.
- Install or upgrade a UI kit Pick the Chelekom version the installer fetches, add kit components to a site from the Studio, and update an extension's components safely.
- Install an extension Set up Mishka Blog or Mishka Document on a site, fix address clashes, repair what a site lost, and add an extension package to the CMS.
- Read content over the JSON:API Sign in over the JSON:API, read public posts and a site's pages with curl, allow a browser frontend, and open the OpenAPI spec.
- Connect a model to the editor's Assistant Write an Elixir module for the AiBackend behaviour, name it in the config, and replace the Echo stub behind the visual editor's Assistant.
- Check the activity log Open the Mishka CMS activity log, filter changes and background jobs, and find out who changed a record or why a background job failed.
- Draw an extension's pages in the site layout Hang an extension's pages on the site-main layout with SiteLayout.layout_id, draw them in its 1160 px column, and use the site's shared color names.
- Translate an extension's words Register an extension's words with Translations.register, keep them from Remove unused with a plugin, read them with lookup, and run the gettext tasks.
- Add the visual editor to your own host Add the mishka_cms_builder package to a Mishka CMS host: the dependency, the two config lines, the JavaScript import and the tables.