Clinic Type / Demo Mode

Learn how CareNova adapts its dashboard, navigation, and landing page based on clinic type, and how to use demo mode to preview different configurations.

Written By Dev010

Last updated 19 days ago

CareNova is built to serve three distinct clinic specializations out of the box. The clinic type controls which modules appear in the dashboard, which landing page layout is rendered publicly, and how certain workflows are presented.

This guide explains how clinic types work, what changes between them, and how to use demo mode to preview different configurations.

The Three Clinic Types

Type

Description

general

General medical practice β€” default configuration

dental

Dental practice β€” includes Odontogram module

ophthalmology

Eye care practice β€” ophthalmology-specific landing page

The active clinic type is stored in the clinics table in your database (clinics.type) and is set during initial configuration in Dashboard β†’ Settings β†’ Clinic.

What Changes Between Clinic Types

Dashboard Navigation

The sidebar navigation adapts based on clinic type:

Module

general

dental

ophthalmology

Medical Records

βœ…

❌

βœ…

Odontograms

❌

βœ…

❌

All other modules

βœ…

βœ…

βœ…

Dental clinics replace the Medical Records section with the Odontograms module. All other modules β€” patients, appointments, billing, inventory, staff, and so on β€” are identical across all three types.

Landing Page

Each clinic type renders a completely different public-facing landing page:

Clinic

Type Components

general

GeneralHero, GeneralServices, GeneralWeCare, GeneralFooter

dental

DentalHero, DentalServices, DentalPricing, DentalWeCare, DentalFooter

ophthalmology

OphthalmologyHero, OphthalmologyServices, OphthalmologyWeCare, OphthalmologyFooter

Each landing page has its own default color palette, copy, imagery, and section layout. All of these can be customized via Dashboard β†’ Landing Settings.

Color Theme

Each clinic type injects its own CSS variables into the landing page via a dedicated theme provider:

Clinic Type

Theme Provider

general

GeneralThemeProvider

dental

LandingThemeProvider

ophthalmology

OphthalmologyThemeProvider

These CSS variables control primary color, accent color, hero background, and button styles on the public landing page. They do not affect the dashboard.

Changing the Active Clinic Type

To change your clinic's active type permanently:

  1. Log in as Admin

  2. Navigate to Dashboard β†’ Settings β†’ Clinic

  3. Update the Clinic Type field

  4. Click Save

The change takes effect immediately β€” the dashboard navigation and public landing page both update without requiring a rebuild or restart.

Changing clinic type from dental to general or ophthalmology will hide the Odontograms module from the sidebar. Existing odontogram records in the database are preserved and will reappear if you switch back to dental.

Demo Mode β€” Previewing Clinic Types

CareNova includes a built-in demo mode that lets you preview any clinic type configuration in your browser without changing your actual database settings.

How It Works

Append a ?clinic= query parameter to any landing page URL:

https://yourdomain.com/?clinic=dental
https://yourdomain.com/?clinic=ophthalmology
https://yourdomain.com/?clinic=general

CareNova reads the parameter, stores the selection in a browser cookie, and renders the corresponding landing page configuration for that browser session.

Demo Cookie Details

Property

Value

Cookie name

landing_clinic_demo

Duration

7 days

Scope

Landing pages only (/, /appointment, /blog, /blog/*, /policies/*)

Effect

Overrides clinics.type from database for that browser

The demo cookie only affects the public landing pages. It does not change the dashboard navigation or any database settings. It is purely a visual preview mechanism.

Clearing Demo Mode

To return to your actual clinic type configuration, clear the cookie in one of two ways:

Option A β€” Open a new browser / incognito window The cookie is not present in a fresh session.

Option B β€” Clear the cookie manually In Chrome: DevTools β†’ Application β†’ Cookies β†’ find landing_clinic_demo β†’ Delete

Option C β€” Wait for expiry The cookie expires automatically after 7 days.

Live Demo URLs

The CareNova demo site uses this feature to demonstrate all three clinic types:

https://app.carenovasoftware.com/?clinic=general
https://app.carenovasoftware.com/?clinic=dental
https://app.carenovasoftware.com/?clinic=ophthalmology

You can share these links with clients or stakeholders to demonstrate different clinic configurations without requiring a separate deployment for each.

Typical Use Cases

Single clinic deployment: Set the clinic type once in Settings and leave it. Demo mode is not needed for day-to-day use.

Agency deploying for a client: Use demo mode URLs to show the client all three landing page options before deciding which clinic type to configure.

SaaS multi-tenant deployment: Each tenant's clinics.type value in the database determines their configuration. Demo mode works per-browser and does not interfere with other tenants.

Developer testing: Use ?clinic=dental locally to test the Odontograms module without changing your database settings.

Troubleshooting

Landing page showing wrong clinic type:

  • Check for a landing_clinic_demo cookie in your browser β€” it overrides the database setting

  • Clear the cookie and reload the page

  • Confirm clinics.type is set correctly in Dashboard β†’ Settings β†’ Clinic

Odontograms not appearing in sidebar:

  • Confirm clinic type is set to dental in Dashboard β†’ Settings β†’ Clinic

  • Hard refresh the browser after changing the clinic type

  • Confirm your user role has odontogram.view permission in the permissions matrix

?clinic= parameter not working:

  • Confirm the value is exactly dental, general, or ophthalmology β€” values are case-sensitive

  • Check that cookies are enabled in your browser

  • Confirm the URL uses a supported landing route β€” demo mode only applies to /, /appointment, /blog, and /policies

Next Step

Continue to Cron Setup to configure the background cleanup job required for session and authentication log maintenance.