Skip to main content
The Documents library (/documents) is the central repository for all organisation documents, providing search, category and status filtering, bulk actions, and document upload.

Overview

No permission gate is present on the /documents route itself — access control is handled at the document level. The page provides a search input, category filter (policy, procedure, form template, training material, report, legal, marketing, other), status filter, and a sort order selector via DocumentSortOptions. View mode can be toggled between grid and list. Documents are fetched via useDocumentSearch with debounced search. Each document card links to /documents/:id. Bulk actions are available via DocumentBulkActionToolbar when documents are checked. Uploading a document opens DocumentUploadDialog. Deleting a document triggers an AlertDialog confirmation before calling useDocumentMutation.

Who it’s for

Access follows your organization’s role and module configuration.

Before you start

  • Ensure your organisation has documents uploaded, or upload your first document using the Upload button.

Steps

1

Open Documents

Navigate to /documents. The library loads with all documents accessible to your account.
2

Search for a document

Type in the search box to filter documents by name. Search is debounced.
3

Filter by category or status

Use the Category and Status selectors to narrow results. Combine filters with search.
4

Toggle view mode

Click the grid or list icon to switch between card grid and list views.
5

Open a document

Click a document card to navigate to /documents/:id for full details and actions.
6

Upload a document

Click Upload to open DocumentUploadDialog and attach a new document file.
7

Bulk-select and act

Check multiple documents to activate DocumentBulkActionToolbar for bulk operations.

Key concepts

Categories include policy, procedure, form_template, training_material, report, legal, marketing, and other. These are sourced from the Supabase document_category enum.
useDocumentSearch accepts SortField and SortDirection parameters from DocumentSortOptions, in addition to search query and filter criteria.

Viewing a document

The Document Details page (/documents/:id) provides a full management interface for a single document, including its metadata, file versions, approval workflow, permissions, and a document preview. Access control depends on document-level permissions managed via PermissionsManager. The page loads the document via useDocumentDetail with the :id parameter, and fetches versions via useDocumentVersions. It uses useDocumentDownload for file downloads and useDocumentMutation for status changes. The UI is tabbed with sections for the document preview (DocumentPreview), approval workflow (ApprovalTimeline, ApprovalWorkflowSetup), and permissions (PermissionsManager). Users can upload a new version via UploadVersionDialog and change the document status via a Select control. Approval decisions are handled via DocumentApprovalDecisionDialog. Status badge colours correspond to the current DocumentStatus enum value.
1

Open a document

From /documents, click a document to navigate to /documents/:id.
2

Preview the document

The default view shows the document preview rendered by DocumentPreview.
3

Change document status

Use the status Select control in the header to change the document’s lifecycle status (e.g., from draft to in_review).
4

Upload a new version

Click the upload action to open UploadVersionDialog and attach a new file version.
5

Manage approvals

Switch to the Approvals tab to view the ApprovalTimeline and configure steps via ApprovalWorkflowSetup. Use DocumentApprovalDecisionDialog to approve or reject.
6

Manage permissions

Switch to the Permissions tab to use PermissionsManager to control who can view or edit the document.
7

Download the document

Click the download action to trigger useDocumentDownload and retrieve the file.
Document status lifecycle — Statuses include draft, in_review, pending_approval, approved, rejected, published, and archived. Each has a distinct badge colour defined in STATUS_COLORS. Version management — Document versions are tracked separately from the base document record. Each upload creates a new version entry.

Platform Foundation

Platform Foundation overview.

Governance & parity

Documentation coverage and governance.
This page documents shipped product behavior. It is not medical, legal, or billing advice. Verify against your organization’s policies and applicable regulations before using it for clinical, compliance, or billing decisions. Protected health information (PHI) shown in the product is governed by your tenant’s access controls and is never exposed in this documentation.
  • src/routes/platform.tsx
  • src/platform/documents/DocumentLibrary.tsx
  • src/platform/documents/useDocumentSearch.ts
  • src/platform/documents/DocumentDetailPage.tsx
  • src/platform/documents/useDocumentDetail.ts
  • src/platform/documents/hooks/useApprovalWorkflow.ts