Tourism Website Template
Demo brand: Vordergrat Seilbahn · Aerial cableway · 8 routes · Astro 7 + Tailwind 4
Live preview
The demo is a full desktop site. Open it in a new tab ↗
About this tourism website template
A complete site for an aerial cableway, mountain railway or lift-served attraction: eight built routes covering the timetable and live operating status, tickets, safety and wind holds, and a line journal.
The world is an operator that talks in spans, rope diameter, grip tests and wind holds — valley station at 1,046 m, top station at 2,864 m. Cool alpine grey-blue with one burnt-orange accent, set in Familjen Grotesk throughout. The palette, type and imagery are all held quiet so the set-piece can carry the page.
And the set-piece is the line itself. One continuous haul-rope path sits fixed behind the document with six cabins placed on it by arc length, so they hang at fixed intervals, move as one, and sway at each tower. Scrolling is ascent, and an altimeter reads your height as you go.
The 8 pages you get
- Home
/ - The ascent: the haul-rope set-piece, the line in numbers, the seasons, and the ticket close.
- Timetable & operating status
/timetable/ - Departures and current running state — the page riders check before they leave the house. Driven by typed arrays.
- Tickets & booking
/tickets/ - Fares by type and season, with a working enquiry form. The commercial page.
- Safety & wind holds
/safety/ - Why the line stops, what a hold means, and what happens next. The page that turns a cancelled ride into a returning visitor.
- Line journal
/blog/ - A wired content collection for operating notes — add an .mdx file and it appears here and in the sitemap.
- Two worked articles
/blog/… - The autumn rope scan, and what a wind hold actually is — long-form posts carrying the full editorial component set.
- 404
/404 - "Not on the rope" — designed in the same language, carrying the navigation.
What is in the build
- Continuous haul-rope path with six cabins positioned by arc length, swaying at each tower — one GSAP-driven set-piece behind the whole document
- Scroll-linked altimeter reading valley-to-summit height as you read
- Departures, routes, cabins, seasons, tickets, timetable and wind holds — nine typed arrays in
src/data, so operations change without touching a layout - A working enquiry form on the tickets route
- Painted-valley imagery with the cableway composited in, applied to all six images so the photography reads as one commission
- Familjen Grotesk self-hosted as the single family — one voice, no font request
- Vitest and Playwright suites included in the repository
The design decision
Every template in this catalog is loud in exactly one channel and deliberately quiet in the other three. That single rule is what stops 65 different worlds reading as one design system in different paint.
- The world
- An alpine cableway operator, valley 1,046 m to Firnjoch 2,864 m. It talks in spans, rope diameter, grip tests and wind holds.
- The mechanic
- The page is the cable. One continuous haul-rope path sits fixed behind the document with six cabins placed on it by arc length, so they hang at fixed intervals and move as one, swaying at each tower. Scroll is ascent, and the altimeter reads it.
- Loud channel
- Moving set-piece
- Imagery. Painted valley, cableway composited
- Type & palette
- Familjen Grotesk
-
#eef1f4#1e2b38#d2541f
Who it is for
Built for cableways, funiculars, mountain railways, chairlifts and lift-served attractions — and the agencies serving alpine tourism. It suits an operator whose credibility rests on engineering and safety as much as on the view. A generic tourism template makes you look like a booking widget; this one makes you look like infrastructure.
Under the hood
- Astro 7 · static output, zero client framework
- Tailwind 4 · one @theme block holds the palette
- MDX content collections for the blog
- GSAP + Lenis for the scroll work, reduced-motion aware
- Self-hosted woff2 — no Google Fonts request
- Sitemap, canonicals and per-route meta wired
- Vitest + Playwright suites in the repository
- Zero third-party requests · strict CSP-ready
How to get started
- 01 Accept the repository invite and clone it.
- 02 Run
npm install, thennpm run dev. - 03 Replace the content in
src/data/with your own — that is where the brand, the copy and every list live. - 04 Swap the images in
public/images/and the palette in the@themeblock. - 05 Run
npm run buildand deploydist/anywhere static.
Questions
Is the cabin animation a video?
No. It is a single SVG path with six cabins positioned along it by arc length and driven by scroll. It scrubs both ways, weighs almost nothing, and stays sharp at any size.
Can I use this for a ski resort or a funicular?
Yes. The rope path is geometry, not a photograph of one specific lift, and the timetable, tickets and safety structure is the same for any lift-served operation. Change the line data and the copy.
Does it connect to a ticketing system?
Not out of the box. The tickets page presents fares and takes an enquiry; connecting it to a real booking provider is a form-action or link change. Keeping the payment decision out of the template is deliberate — every operator already has one.
What exactly do I get for $49?
Access to a private GitHub repository holding the complete Astro source of this template — every route you see in the preview, the content model, the images and the tests. Updates arrive in that same repository.
How many sites can I build with one licence?
As many as you like, for yourself or for clients. The licence is per buyer, not per project. The one thing you may not do is resell or redistribute the source as a template, theme or starter kit.
Do I need to know Astro?
It helps, but the common case is editing content and colour. Content lives in typed objects under src/data, colour lives in one @theme block, and npm run dev shows the result. Deploying is a static folder — Cloudflare Pages, Netlify and Vercel all take it as-is.
Is anything loaded from a third party?
No. Fonts are self-hosted woff2, there is no analytics, no tag manager, no CDN script and no external CSS. The build ships static HTML under a strict Content-Security-Policy.
More travel & leisure templates
Out of Season
Travel magazine / editorial quarterly
Loud
Display type
Postmarked
Travel journal
Loud
Imagery
Marémont
Event venue
Loud
Imagery
MERECOMBE
Coastal house hotel
Loud
Imagery