Skip to content
Layouts
On this page
  1. Job
  2. Event
  3. Episode
  4. Project and case study
  5. Accessibility
Page actions

Detail pages

A detail page shows one item: a header, a list of facts read from front matter, the body and one call to action. These layouts load modootoday-detail.css only on their own pages and add no JavaScript. Each one prints a schema.org main entity built from the same front matter; a schema: map overrides any property. An optional image: {path, alt, width, height} shows a cover under the header.

Layout Facts Call to action Structured data Demo
project client, role, year, stack, links cta CreativeWork Project
case-study client, role, year, stack, links cta Article Case study
job location, employment, salary, posted, deadline Apply (apply) JobPosting Job
event starts, ends, venue, online Tickets and an .ics file Event Event
episode season and episode, posted, duration; audio player cta PodcastEpisode Episode

Job

---
layout: job
title: Technical writer
description: Write and maintain the product documentation.
date: 2026-10-01          # datePosted
deadline: 2026-12-01      # validThrough
employment: full-time     # full-time, part-time, contractor, temporary, intern, volunteer, per-diem, other
location: Seoul           # or remote: South Korea (the country applicants must live in)
salary: {min: 50000, max: 70000, currency: USD, unit: year}
apply: mailto:jobs@example.com
---

The hiring organization is the site publisher (modootoday.schema.publisher). modootoday-check reports a job without date, without location or remote, or with an unknown employment.

Event

---
layout: event
title: Theme meetup
starts: 2026-11-20 19:00:00 +0900
ends: 2026-11-20 21:00:00 +0900
venue: Hall A             # a place, an online URL, or both
address: 1 Main St, Seoul
online: https://example.com/live
tickets: https://example.com/tickets
---

The calendar link is an .ics file in a data: URL, so it works without a server.

Episode

---
layout: episode
title: Pilot
date: 2026-10-10
season: 1
episode: 3
duration: 42              # minutes
audio: /media/ep3.mp3
transcript: /podcast/3/transcript/
---

The player is the browser’s own <audio controls>; it loads nothing until it is played.

Project and case study

---
layout: project           # or case-study (an Article with author and dates)
title: Atlas
client: ACME
role: Design and build
year: 2026
stack: [Jekyll, Sass]
links:
  - {label: Repository, url: "https://example.com/atlas"}
cta: {label: Contact us, url: /contact/}
---

Accessibility

The article is labelled by its heading, facts are a description list, and links that repeat (Apply, Tickets) name the page for screen readers. Print hides the call to action and the player.

Edit this page