Skip to main content

v1.6 — Spec

Date: 2026-05-08
Scope: Docs gap fill, info-button coverage for Financial Hub + Settings, v1.6 release

Goals

  1. Fill 14 missing doc articles in q.odontox.io so every nav item and settings module has a help link target
  2. Wire helpUrl on all previously-uncovered nav items (Financial Hub parent + children, Settings, Service Catalog, Daily Close)
  3. Add info-button in settings module headers (not bento cards)
  4. Publish v1.6 release notes and bump version tag

A — New docs (14 files)

All follow existing style: frontmatter title/description/icon, plain intro, <Note> for roles, ## sections, Related articles footer. No superadmin content anywhere.

Settings module docs (docs/admin/)

FileTitleIconLinks to settings card id
settings.mdxSettingsgearHub overview — lists all modules
permission-templates.mdxPermission Templatesshield-halvedpermission-templates
signatures.mdxSignature Centerpen-linedocuments
discount-policies.mdxDiscount Policiespercentdiscount-policies
prescription-template.mdxPrescription Templatefile-medicalprescription-template
finance-letterhead.mdxFinance Document Letterheadfile-textfinance-letterhead
medicine-library.mdxMedicine Librarypillsmedicine-library
laboratories.mdxLaboratoriesflask-conicallabs
operatories.mdxOperatories & Chairsarmchairoperatories
whatsapp.mdxWhatsAppmessage-circlewhatsapp
appearance.mdxAppearancepaletteappearance
billing.mdxMy Billingcredit-cardbilling
service-catalog.mdxService Catalogbook-open— (nav item services)

Finance docs (docs/finance/)

FileTitleIcon
financial-hub.mdxFinancial Hubbanknote
daily-close.mdxDaily Closebook-open-check

B — useNavItems.ts: add helpUrls

Admin role

// Finance section
{ id: 'finance', label: 'Financial Hub', helpUrl: 'https://q.odontox.io/finance/financial-hub', children: [
    { id: 'finance-quotations', ..., helpUrl: 'https://q.odontox.io/finance/quotations' },
    { id: 'finance-invoices', ..., helpUrl: 'https://q.odontox.io/finance/invoices' },
    { id: 'finance-receipts', ..., helpUrl: 'https://q.odontox.io/finance/receipts' },
]}

// Operations section
{ id: 'services', ..., helpUrl: 'https://q.odontox.io/admin/service-catalog' },
{ id: 'eod', ..., helpUrl: 'https://q.odontox.io/finance/daily-close' },

// Bottom section
{ id: 'settings', ..., helpUrl: 'https://q.odontox.io/admin/settings' },
Apply same helpUrl additions to doctor and receptionist roles for their finance children and settings items.

C — AppLayout.tsx: show HelpCircle on parent nav items

Current guard: {item.helpUrl && !hasChildren && ( — prevents help icon on expandable items. Change to: {item.helpUrl && ( — renders HelpCircle before ChevronDown for items that have both. The anchor uses e.stopPropagation() already so clicking the icon won’t toggle the parent expand/collapse.

D — SettingsModule.tsx: info button in module header

Card definition change

Add docsUrl to each card in allCards:
{ id: 'profile', ..., docsUrl: 'https://q.odontox.io/admin/clinic-settings' }
{ id: 'staff', ..., docsUrl: 'https://q.odontox.io/admin/staff-management' }
{ id: 'permission-templates', ..., docsUrl: 'https://q.odontox.io/admin/permission-templates' }
{ id: 'documents', ..., docsUrl: 'https://q.odontox.io/admin/signatures' }
{ id: 'document-numbering', ..., docsUrl: 'https://q.odontox.io/finance/document-numbering' }
{ id: 'discount-policies', ..., docsUrl: 'https://q.odontox.io/admin/discount-policies' }
{ id: 'prescription-template', ..., docsUrl: 'https://q.odontox.io/admin/prescription-template' }
{ id: 'finance-letterhead', ..., docsUrl: 'https://q.odontox.io/admin/finance-letterhead' }
{ id: 'medicine-library', ..., docsUrl: 'https://q.odontox.io/admin/medicine-library' }
{ id: 'services', ..., docsUrl: 'https://q.odontox.io/admin/service-catalog' }
{ id: 'labs', ..., docsUrl: 'https://q.odontox.io/admin/laboratories' }
{ id: 'operatories', ..., docsUrl: 'https://q.odontox.io/admin/operatories' }
{ id: 'bridge', ..., docsUrl: 'https://q.odontox.io/admin/bridge-devices' }
{ id: 'whatsapp', ..., docsUrl: 'https://q.odontox.io/admin/whatsapp' }
{ id: 'notifications', ..., docsUrl: 'https://q.odontox.io/admin/notifications' }
{ id: 'audit', ..., docsUrl: 'https://q.odontox.io/admin/audit-logs' }
{ id: 'appearance', ..., docsUrl: 'https://q.odontox.io/admin/appearance' }
{ id: 'security', ..., docsUrl: 'https://q.odontox.io/admin/security' }
{ id: 'billing', ..., docsUrl: 'https://q.odontox.io/admin/billing' }

Header render change

In the active module view header (the flex items-center gap-4 border-b pb-4 block), add after the breadcrumb <div>:
{activeSection?.docsUrl && (
  <a
    href={activeSection.docsUrl}
    target="_blank"
    rel="noopener noreferrer"
    className="ml-auto text-muted-foreground hover:text-foreground transition-colors"
    title="View documentation"
  >
    <HelpCircle className="h-4 w-4" />
  </a>
)}
Import HelpCircle from lucide-react. Bento cards: no change — info icon does NOT appear on the card grid.

E — v1.6 release notes

File: docs/releases/v1-6.mdx

Public content (no superadmin)

Headline: TIFF/DICOM Viewer, Real-time Messaging, Inventory Expiry Alerts, Medical History at Registration, Login Redesign Sections:
  1. TIFF/DICOM — smart viewer tab, server-side PNG conversion, Bridge Inbox badges, email previews
  2. Real-time messaging — read receipts, attachment thumbnails, online presence
  3. Inventory — expiry alerts dashboard, bulk assign & hard delete, KB links
  4. Medical history at registration — full form at patient creation
  5. Login redesign — Welcome heading, dark inputs, clinic logo in hero panel
  6. Bridge app updates — v1.0.2 (queue dedup, TIFF retry, Windows release workflow)
  7. Reliability — chunk recovery hard-nav, passkey discovery fix, AI non-fatal tracing

F — Version bump

ui/src/components/ui/sign-in.tsx line 79: 'v1.5''v1.6'

Constraints

  • No superadmin content in any public doc or release note
  • No dollar/currency icons — Banknote only
  • HelpCircle icon from lucide-react (same as AppLayout uses)
  • Docs style: match existing files exactly (frontmatter, Notes, CardGroup, Steps, Accordion, Related articles)