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 links
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.
Menu
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.
Footer
| 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.