Spaces:
Running
Product
Register
product
Users
Thai Buddhist scholars, monks, and serious students of the Pali Tipitaka. Primary users are academics and clergy who read Pali and Thai scriptures daily β they value clarity, precision, and a reading environment that respects the sacred nature of the text. Secondary users include general lay Buddhists studying Dhamma.
The user's context is quiet, focused study β a monastery library, a scholar's desk, or a home study space. Reading sessions are long (30+ minutes). The interface must not compete with the text.
Product Purpose
A fast, searchable digital reader for the MCU (Mahachulalongkornrajavidyalaya University) Tipitaka β the complete Pali Buddhist canon in Thai script. Users need to search across 45+ volumes, navigate by table of contents, and optionally consult an AI assistant for explanations. The app exists because printed Tipitaka is unwieldy (thousands of pages) and existing digital tools lack proper Thai/Pali full-text search.
Success looks like: a monk or scholar can open the app, find any passage in seconds, read it comfortably for hours, and get an AI explanation without breaking focus.
Brand Personality
Formal, serene, trustworthy. Like a well-bound scripture β not flashy, not cold, but dignified and inviting to deep study. The brand is the text itself; the interface should feel transparent.
- Serene β calm colors, generous whitespace, no visual noise
- Authoritative β clear typography, precise navigation, reliable search
- Warm β paper-like textures where possible, not sterile digital
Anti-references
- Generic SaaS dashboards with cards, badges, and data-heavy chrome
- "AI chatbot" UIs that make the chat the centerpiece (AI is a tool, not the experience)
- Dark mode-first or neon-accented "developer tool" aesthetics
- Any design that distracts from reading β animated backgrounds, decorative floating elements, crowded toolbars
- Pagination-based readers (click β/βΆ to turn pages) β the reading model is continuous vertical scroll
- Three-column layouts that split reading space with a permanent AI panel
Design Principles
- The text is sacred. Every pixel that isn't content is a distraction. Prioritize reading ergonomics β line height, font size, contrast, column width β over chrome.
- Scholar's tools, not a toy. Navigation and search should be precise and predictable. No surprises, no gestures that hide functionality.
- Disappearing interface. When reading, controls should fade. The reader panel is the hero. AI (summoned via Floating Action Button), search, and table of contents are overlays the user summons on demand β never permanent columns competing with the text.
- AI is a consultant, not the host. The AI assistant is a Floating Action Button (FAB) at bottom-right, opening a draggable popup. It never occupies a permanent column. When closed, it vanishes to a single button.
- Continuous scroll, not pagination. Pages load seamlessly as the user scrolls down β like reading a PDF. Page boundaries are marked with subtle dividers, not click-to-advance controls.
- Respect the writing system. Thai and Pali scripts have unique typographic needs (tone marks, vowel placement). Font choices and spacing must accommodate these.
- Work offline-first. The app is a PWA. The Tipitaka corpus is cached on first load via Service Worker; reading and searching never require a network request after that.
Success Metrics
| Metric | Target | Measurement |
|---|---|---|
| Search latency (FTS5) | < 200ms p95 | Server-side timer |
| Page load (first contentful paint) | < 1.5s | Lighthouse |
| AI first token latency | < 2s | Client-side timer |
| Lighthouse Performance score | > 90 | Lighthouse CI |
| Offline reading availability | 100% after first load | Service Worker cache hit rate |
| Font rendering correctness | 0 tone-mark clipping | Manual QA on Thai/Pali test set |
Accessibility & Inclusion
- WCAG AA minimum contrast for all text
- Support for larger font sizes (up to 36px) for users with visual impairments
- prefers-reduced-motion respected (already implemented)
- Thai and Pali language support with correct rendering
- Touch-friendly targets (44px minimum) for mobile/tablet reading