Mobile Accessible Web Schedule
Find a file
2025-08-27 14:36:11 +01:00
.gitignore Add .gitignore to exclude system files and build artifacts 2025-08-11 19:46:52 +01:00
.hintrc WCAG amendmends 2025-08-11 19:44:04 +01:00
.prettierrc Better README 2025-08-11 20:44:51 +01:00
maws-calendar.ics feat: remove VRChat music AMAA 2025-08-27 14:36:11 +01:00
maws-event_uids.txt feat: remove VRChat music AMAA 2025-08-27 14:36:11 +01:00
maws-textonly.txt feat: remove VRChat music AMAA 2025-08-27 14:36:11 +01:00
maws.css Enhance download button styling and improve track badge accessibility 2025-08-11 19:57:41 +01:00
maws.html Refactor HTML structure for improved readability and accessibility 2025-08-11 20:13:02 +01:00
maws.js WCAG amendmends 2025-08-11 19:44:04 +01:00
README.md Better README 2025-08-11 20:44:51 +01:00
schedule-lts-wcag.html Upload 110825 Changes to KGIT 2025-08-11 18:44:54 +01:00
schedule.css fix: made filtering work on mobile 2025-08-14 17:43:11 +01:00
schedule.html feat: remove VRChat music AMAA 2025-08-27 14:36:11 +01:00

DVS 7 — MAWS (Mobile Accessible Web Schedule)

A lightweight, WCAG-first, mobile-friendly schedule for DVS 7. Zero build chain, pure HTML/CSS/JS, works great without JavaScript.

Files

Web (core)

  • maws.html — markup & content (one page)
  • maws.css — styles (AAA contrast, responsive, card layout)
  • maws.js — behaviour (filters, host search, local time line)

Downloads (for attendees)

  • maws-calendar.ics — add events to personal calendar
  • maws-textonly.txt — plain-text schedule (screen-reader & copy-paste friendly)

Legacy (reference only)

  • schedule-lts-wcag.html — original long-term stable version

Goals & Accessibility

  • Mobile-first: tables collapse into cards at ≤900px.
  • WCAG: AAA contrast on text; visible focus, skip links, semantics.
  • No-JS compatible: the page is fully usable without JS.
  • Assistive tech: clear headings, captions, landmarks, and sr-only text.

How it works

Tracks & filters

  • Track filter checkboxes live in Filter sessions.
  • Each row carries data-track="…". Values must match the checkbox values (e.g. music, art, discord exclusive, etc.).
  • Optional Host search filters rows by text in the Hosts cell.

Local time line

  • Time cells include a UTC hint, e.g. (22:0000:00 UTC).
  • JS reads the day from the <summary> (e.g. “Friday, August 29”) and renders Local: HH:MMHH:MM beneath the UTC line.
  • Page-level data-start-date="2025-08-28" anchors DST rules.

Hosts

  • Use a plain list: <ul class="hostlist" role="list" aria-label="Hosts"><li>…</li></ul>
  • If unknown, leave the cell present but empty (keeps columns aligned).

UIDs

  • Every event has a stable ID for cross-referencing and automation:
    • In the row: id="ev-someid" and data-uid="someid".
    • Hidden span inside time cell: <span class="event-uid" hidden>someid</span>
  • A full list is in maws-event_uids.txt.

Editing content (safe checklist)

When adding or editing a session row:

  1. Keep columns: Time, Session, Hosts, Track, Content warnings.
  2. Update data-track, data-uid, data-day-index.
  3. Put UTC hint in the Time cell (HH:MMHH:MM UTC) (local time renders automatically).
  4. Long titles/hosts are fine—cards wrap and hyphenate (with -webkit-hyphens for older iOS).
  5. Dont remove the Hosts cell; leave it empty if not declared.

Styling & theming

  • Track badges: AAA black text + coloured border/dot per track.
  • Cards (≤900px): labelled grid, left colour accent by track, dotted divider between sessions.
  • Day navigation and download buttons share the same sizing for consistency.

Browser support notes

  • Hyphenation: hyphens + -webkit-hyphens (covers iOS Safari < 17).
  • If CSS fails to load, a tiny inline fallback in <head> preserves fonts, layout, and card view.
  • We use a build marker var: :root { --maws-build: "fix-b4"; } for quick diagnosis.

Cache-busting & sanity checks

If changes dont appear:

  1. Hard refresh (Cmd/Ctrl-Shift-R).
  2. DevTools → Network → confirm maws.css?v=fix-b4 loads.
  3. DevTools → Console should show: MAWS JS build: fix-b4 loaded If you see a warning about the build marker, your browser has the old CSS—hard refresh again.

Contributing

  • Keep copy changes minimal and accessible (plain language, short sentences).
  • Dont remove semantic elements (captions, headings, roles, aria-labels).
  • Test:
    • Desktop + phone sizes (try ≤390px).
    • Keyboard only: Tab order, visible focus.
    • High zoom (200400%).
    • One track selected + host filter applied (edge cases).

Support

Problems? Ping Éimí in #tech on Discord. Copyright © DVS 2025.