Logo Lanfrica

fmadore/IWAC-theme

Record type:

software
Creator:
fma
Host:
Omeka S theme for the Islam West Africa Collection, an open-access francophone digital collection at ZMO Berlin. OKLCH design tokens, light/dark mode, EN/FR, WCAG 2.1 AA. # IWAC Theme: An Omeka S Theme for the Islam West Africa Collection > **Origin**: IWAC Theme started as a fork of the Freedom theme by the Omeka Team at the Corporation for Digital Scholarship. It has since diverged substantially and is maintained as a standalone theme, but we gratefully acknowledge Freedom as the foundation it grew out of. This is a customized Omeka S theme for the Islam West Africa Collection, an open-access digital collection at ZMO Berlin, with modern enhancements including a light/dark mode toggle and multilingual support. ## Features ### Light/Dark Mode Toggle - User-selectable theme with toggle button in the header - Respects system preference (`prefers-color-scheme`) as default - Persists user choice in `localStorage` - Smooth transitions between themes - Accessible keyboard navigation and ARIA labels ### Language Switcher - Integration with the Internationalisation module - Displays the current language code (EN/FR) without country flags - Dropdown menu for switching between available translations - Only visible when module is installed and page has translations ### Installable PWA - Each site is installable as an app ("Add to Home Screen" / desktop "Install") with a brand icon - Quiet install button in the footer bottom bar — **no auto-popup**; it only appears when the browser can install - iOS Safari gets a click-only "Share → Add to Home Screen" hint - Per-site web-app manifest (name, icons, theme color, Browse/Search shortcuts) built at runtime - Toggle off via **General Settings → Enable PWA**. See `docs/PWA.md` ### Modern Design System - **CSS Custom Properties** - Comprehensive design token system for colors, spacing, typography - **OKLCH Color System** - Perceptually-uniform palette derived from a single admin-set brand seed (`--primary-base`) via `color-mix(in oklab, …)` - **Display-tier fluid type** - `clamp()` on the largest headings; a fixed `rem` scale for body/UI so labels don't drift between breakpoints - **Besley + So …