Polaris Astro documentation
Trips
Add your trips, with an itinerary, price levels, departures and FAQs, from one Markdown file each.
Each trip is a Markdown file in src/content/trips/. The file name becomes its address: markha-valley-trek.md is published at /trips/markha-valley-trek/. Trips appear in the finder on /trips/, in the trips blocks, and on their destination’s page.
---
title: "Markha Valley Trek"
destination: ladakh
summary: "Seven days on foot from Leh through the Markha valley, with two passes, village homes and camps on the river."
days: 7
nights: 6
grade: moderate
maxAltitude: 5150
group:
min: 4
max: 10
style: small-group
priceFrom: 890
priceNote: "Per person, twin share. Excludes international flights and Indian visa fees."
image: trip-markha-valley-trek.jpg
imageAlt: "Two walkers with rucksacks on a stony riverbed in a dry canyon, a snow peak ahead"
gallery:
- "trip-markha-valley-trek-2.jpg"
- "trip-markha-valley-trek-3.jpg"
highlights:
- "Six days on the Markha river with a camp at each stop"
- "Kongmaru La, a pass of about 5,150 m, crossed in the morning"
featured: true
order: 1
tiers:
- name: "Standard"
price: 890
note: "Guesthouses in Leh, shared tents on the trek"
- name: "Comfort"
price: 1150
note: "Private room in Leh, tents with proper beds on the trek"
---
The story of the trip goes here, in normal Markdown.
Fields
| Field | Required | What it does |
|---|---|---|
title |
Yes | The trip name. |
destination |
Yes | The file name of a destination in src/content/destinations/, without .md. The build fails if it doesn’t exist. |
summary |
Yes | One or two sentences for cards, the page header and search results. |
days |
Yes | Length in days. |
nights |
No | Length in nights. |
grade |
Yes | easy, moderate, hard or expert. |
maxAltitude |
No | The highest point, in metres. Shown in metric or converted when units is imperial. |
group |
Yes | min and max group size. |
style |
Yes | small-group, private, self-drive, family or tailor-made. |
priceFrom |
Yes | The lowest price per person, as a number: 890. The currency comes from site.config.ts. |
priceNote |
No | A line under the price in the booking box. |
image |
Yes | The main photo, a file name in src/assets/images/. |
imageAlt |
Yes | A description of the photo for screen readers. |
imagePosition |
No | Which part of the photo to keep when it is cropped. |
gallery |
No | More photos, as file names. |
highlights |
Yes | A list of short highlights. |
season |
No | Twelve values from January to December, each best, good or off. Leave it out to use the destination’s months. |
featured |
No | true makes the trip eligible for blocks set to featured: true. Default false. |
order |
No | Lower numbers come first. Trips with the same number are sorted by title. Default 0. |
tiers |
No | Price levels. See below. |
itinerary |
No | The days. See below. |
included, excluded |
No | Two lists of short lines. |
departures |
No | Dates and seats. See below. |
faqs |
No | Questions and answers. See below. |
The Markdown below the front matter is the trip’s story, shown beside the highlights on the trip page.
Price levels
tiers:
- { name: Standard, price: 890, note: "Guesthouses in Leh, shared tents on the trek" }
Each tier has a name, a price per person and an optional note. The trip page shows them in a tiers block, and the booking box lets the visitor choose one. The middle tier is marked “Most chosen” when there are three or more.
Itinerary
itinerary:
- title: "Skiu to Markha village"
from: "Skiu"
to: "Markha"
altitude: 3720
distanceKm: 12
hours: 6
overnight: "Markha"
meals:
- B
- L
- D
body: "The valley narrows and the path crosses the river several times."
Each day needs a title and a body. The rest is optional: from, to, altitude (metres), distanceKm, hours, overnight, and meals as any of B, L and D. The route variant of the itinerary block draws an altitude profile from each day’s altitude.
Departures
departures:
- date: "2027-07-03"
seats: 2
status: few
| Field | What it does |
|---|---|
date |
The start date as YYYY-MM-DD. Anything else fails the build. |
seats |
Seats left. |
price |
A price for this date only. Leave it out to use priceFrom. |
status |
open, few, full or request. Leave it out and Polaris works it out: full at 0 seats, few at 3 or fewer, otherwise open. |
Departures in the past are hidden. Which ones count as past is worked out when the site is built, so rebuild the site after a date passes. Full departures stay in the table but can’t be chosen in the booking box. If a trip has no upcoming departures, the booking box says the dates are on request.
FAQs
faqs:
- q: "How fit do I need to be?"
a: "You should be comfortable walking for six hours a day with a daypack."
The trip page shows them in a faq block, with FAQ structured data for search engines.
Adding a trip
- Copy an existing file in
src/content/trips/, rename it and change the fields. - Put its photos in
src/assets/images/, or leave the names and let Polaris draw placeholders. See Colours, fonts and photos. - Run
npm run dev. If a field is wrong, the error names the file and the field.