Mira Astro documentation

Site settings

Every option in src/site.config.ts, from your clinic's name to booking, menus and footer.

src/site.config.ts holds your clinic’s details and the parts that appear on every page. Conditions, treatments, clinics, therapists and posts have their own files in src/content/.

Any text can be one string, or one per language:

tagline: { en: 'Physiotherapy and holistic care, side by side.', or: 'ଫିଜିଓଥେରାପି ଓ ପ୍ରାକୃତିକ ଚିକିତ୍ସା, ଗୋଟିଏ ଛାତ ତଳେ।' },

Links to your own pages, such as /about/, are switched to the visitor’s language automatically (/or/about/).

Your clinic

Setting What it does
name Your clinic’s name, used in the header, footer, page titles and search results.
tagline One line about you. It’s the description of pages that don’t have their own.
palette 'clinical' (calm teal and sand) or 'holistic' (herbal green and turmeric). See Colours, illustrations and photos.
timezone Your clinic’s time zone, such as 'Europe/London' or 'Asia/Kolkata', so “Open now” is right wherever the visitor is.
currency An ISO code such as 'GBP', 'INR' or 'USD'. Prices are shown with the local symbol.
shareImage The picture shown when a page is shared on social media, a file name in src/assets/images/.
schemaType How search engines describe you: 'Physiotherapy', 'MedicalClinic' or 'HealthAndBeautyBusiness' (for a spa-like centre).

Contact

contact: {
  phone: '+44 20 7946 0321',
  whatsapp: '442079460321',
  email: 'hello@yourclinic.com',
},

whatsapp is your number in international format, digits only. Leave it empty ('') to hide every WhatsApp button. A clinic with its own number can set phone in its location file; everywhere else uses this one.

Booking

booking: {
  url: 'https://yourclinic.janeapp.com/',
  embed: true,
  provider: 'Jane',
  page: '/book/',
},

See Booking, hours and clinics for what each setting does.

Forms

forms: { action: '/thank-you/', netlify: false, hidden: {} },

Where contact and appointment-request forms are sent. See Forms.

social: [
  { name: 'facebook', label: 'Facebook', href: 'https://facebook.com/yourclinic' },
  { name: 'google', label: 'Google reviews', href: 'https://g.page/r/your-review-link' },
],

Each becomes a round icon in the footer that opens in a new tab. name is an icon from Simple Icons, such as facebook, instagram, youtube, google, tiktok, x or linkedin. label is what screen readers announce. Delete the ones you don’t use; with none, the row disappears.

Phone booking bar

mobileBookBar: true fixes Call · WhatsApp · Book to the bottom of the screen on phones. It hides itself on your booking page. Set it to false to turn it off.

nav: [
  { label: { en: 'Conditions', or: 'ରୋଗ' }, href: '/conditions/' },
  { label: 'Treatments', href: '/treatments/', children: [
    { label: 'All treatments', href: '/treatments/' },
    { label: 'Prices', href: '/pricing/' },
  ] },
],

An item with children becomes a dropdown. On phones the menu opens as a full-screen panel. The Book button in the header goes to booking.page.

Setting What it does
footer.about A short line under your logo.
footer.columns Link columns, each with a title and links.
footer.legalLinks Small links in the bottom row, such as Privacy and Medical disclaimer.
footer.note A line after the copyright, such as your registration body. Leave it empty to hide it.

The footer also shows today’s status (“Open now · until 13:00”) and the address of your first clinic, and your social icons.