All six routes include a day-by-day itinerary timeline, included and not-included lists, a departure calendar, and twelve months of climate data
wanderly — Next.js Business Template
By intellectwithvivek
Wanderly is a free travel website template built on Next.js, aimed at boutique travel agencies, with itineraries for six routes, climate charts, and booking-related pages.
Explore the design
Compare the page layouts and mobile experience. Open any screenshot for a closer look.
Actual screenshot captured by the server browser.
All pages & views 2
Screenshots show visual appearance; interactive behavior may differ.
What stands out
A quick read of the recorded project description.
Destination pages use inline SVG line and bar charts to show monthly average highs and rainfall, with screen-reader-readable data tables
A unified boarding-pass ticket stub visual motif, implemented in about forty lines of CSS, reused on the homepage, destination index, offer carousel, and search results
Each route is statically prerendered, and the homepage revalidates hourly to keep the countdown updated
Built-in Metadata API, sitemap, robots, llms.txt, and structured data such as TravelAgency, TouristTrip, and FAQPage
Data is centralized in files such as data/trips.ts, data/site.ts, and data/faq.ts, so replacing content requires no component changes
Template Details
Wanderly is a travel website template built with Next.js, positioned as a complete site for a boutique travel agency rather than a landing page with only placeholder copy. It organizes content around six fictional routes (Bali, Santorini, Kyoto, Swiss Alps, Ladakh, Iceland), each with a nine- or ten-day day-by-day itinerary, included and not-included item lists, a departure calendar, and twelve months of climate data.
The interface is built on the VivekUI component library; the project itself does not introduce Tailwind, a chart library, or an icon package. Charts are rendered server-side by the component library as inline SVG, with hidden data tables for screen readers. Routes include the homepage, destination list, six prerendered destination detail pages, a trip planning page, a built-with page, and a 404, and it also generates sitemap.xml, robots.txt, and llms.txt. The homepage revalidates hourly to keep the offer countdown updated.
SEO and structured data are part of the template: each route sets metadataBase, canonical, Open Graph, and Twitter cards through the Metadata API, and outputs schema such as TravelAgency, WebSite, TouristTrip, BreadcrumbList, and FAQPage. For accessibility, it states conformance with WCAG AA, including one h1 per page, skip links, visible focus rings, respect for prefers-reduced-motion, and alternative text for images.
Usage limitations: the repository uses the MIT license, and the free scope is this version's code, allowing use, modification, commercial use, and distribution, but copyright and license notices must retain when distributing. Demo images come from Unsplash and are referenced by hotlinking, and avatars come from i.pravatar.cc; these third-party assets must be checked against their respective licenses. The companies, routes, prices, and reviews in the template are fictional.
Is it right for your project?
Use Cases
- Build an official website for a boutique travel agency or custom travel brand showing around six routes
- Travel product detail pages that need day-by-day itineraries, departure dates, and climate reference information
- Next.js projects that want server-rendered charts and structured data with few dependencies
- Use as a reference site for learning Next.js routing, SEO metadata, and structured data organization
Suitable For
- Travel agencies operating small travel routes that need ready-made content structure
- Front-end developers familiar with Next.js and TypeScript who want to replace data files directly
- Personal or team projects that need a commercially usable MIT-licensed template
- Website builders focused on WCAG AA accessibility and structured data practices
Getting started & customization
Use these recorded setup notes alongside the repository instructions for your chosen version.
- 1
Requires Node.js 20.9 or higher, with 22 LTS recommended
- 2
After cloning the repository, run npm install and npm run dev; no configuration file or CLI is required
- 3
Before deployment, set SITE.url in data/site.ts; canonical, Open Graph, sitemap, and JSON-LD will update accordingly
- 4
Route copy, prices, itineraries, climate, and photos are modified in data/trips.ts, and FAQ copy is modified in data/faq.ts
- 5
Demo images come from Unsplash and are hotlinked, and avatars come from i.pravatar.cc; check third-party asset licenses yourself before commercial use
License & source material
Usage conditions & limitations
Free to use · keep license noticeThis listing covers the free version under the MIT license in the public repository; the free scope is this version's code and does not mean external services or third-party assets are free.
Must comply with when using
- Free use, modification, commercial use, and distribution of this version's code are allowed.
- When distributing copies or substantial portions of the code, retain the original author's copyright notice and the complete MIT license notice.
- The code is provided as is; warranties and limitations of liability are governed by the original license and applicable law.
Additional costs & items to verify
- Demo images, fonts, icons, and other third-party assets must be checked against their respective licenses and cannot be judged solely by the code's MIT license.
- External services such as domains, hosting, databases, payments, or AI may incur separate charges.
- Demo photos come from Unsplash and are hotlinked under the Unsplash license and are not redistributed; avatars come from i.pravatar.cc. These third-party assets are not licensed together with the MIT code license, and their respective licenses must be checked before commercial use.
- The companies, routes, prices, and reviews in the template are fictional content and must be replaced with real information before launch; they cannot be used directly as the public-facing content of a real travel agency.
View Original Text Basis
Permission is hereby granted, free of charge
Original License Text
Photographs are from [Unsplash](https://unsplash.com) under the Unsplash licence and are hot-linked, not redistributed. Avatars are from [i.pravatar.cc](https://i.pravatar.cc).
Original README
https://github.com/intellectwithvivek/wanderly/blob/main/LICENSEhttps://github.com/intellectwithvivek/wanderly/blob/main/README.mdWanderly is a fictional company; the trips, prices and reviews are invented.
Original README
Compiled by DeepSeek based on repository license and README ·2026-10-04. Results only cover the materials read; dependencies, images, fonts, and subsequent term changes are subject to their respective original texts.
Project checks & description sources
Template Information
- Source platforms
- GitHub
- Documentation and maintenance reference score
- More documented · 83 / 100
- Technologies
- Next.js · React
- Website type
- Corporate Website
How this score is calculated
Our heuristic uses license records (up to 30), a demo link (12), a preview (10), stars (15), recorded maintenance (15), description completeness (8), feature records (5) and classification data (5). It is not a code, security or performance test, or a Google score. A link does not establish tested functionality.
What to verify for this project
- Repository update recorded
- 2026-08-29
- Screenshot last checked
- 2026-10-04
A demo link is listed. Check it with your own content and viewport sizes; its presence does not confirm that forms, authentication or payments work.
The catalog identifies Next.js as the primary stack. Check the actual dependency manifest and lockfile for versions and hosting requirements. These notes use recorded metadata, not a code audit or a deployment test.
Use a selection guide →How this description was prepared
AI-assisted description based on catalog records and repository material. Repository authors are not automatically the reviewers of this description.
Review declaration: codex-user-requested-batch-review-20261017 · 2026-10-16
Inspect the recorded source material
SHA-256: 6d8f25939af2c867ba4bc18358f4db02535c2d56393b6f059bd0954c59fc792c
2026-10-04T08:39:34.687Z
Source file / repository<div align="center">
# Wanderly — a free travel website template for Next.js
**Six trips. Day-by-day itinerary timelines. Real month-by-month climate charts.
No chart library, no Tailwind, no config.**
[](https://nextjs.org)
[](https://react.dev)
[](https://www.typescriptlang.org)
[](https://www.npmjs.com/package/@the_viveksingh/vivek-ui)
[](#what-is-not-in-this-project)
[](LICENSE)
### [**Live demo →**](https://wanderly.vivekkumarsingh.in) · [**Documentation →**](DOCUMENTATION.md) · [**Use this template →**](https://github.com/intellectwithvivek/wanderly/generate)
[](https://wanderly.vivekkumarsingh.in)
</div>
---
Wanderly is a complete, production-quality website for a boutique tour operator selling
six curated trips — Bali, Santorini, Kyoto, the Swiss Alps, Ladakh and Iceland. It is not
a landing page with lorem ipsum in it: every trip has a real nine-or-ten-day itinerary, an
inclusions and exclusions list, a departure calendar, and twelve months of climate data.
The whole interface is built with **[VivekUI](https://ui.vivekkumarsingh.in/docs?utm_source=vivekui-template&utm_campaign=travel&utm_medium=readme)**,
a free React component library with **zero runtime dependencies**.
## Why this exists
**To show what VivekUI can actually build.** A component library is easy to demo with a
button and a modal, and much harder to demo with a whole site — a booking flow, an
itinerary timeline, live countdowns, real charts, a filterable planner, dark mode and
structured data — without reaching for Tailwind halfway through. Wanderly is that
demonstration: every visible element is a VivekUI component, and the entire custom
stylesheet is one file.
**To save you the first two weeks.** Most tour and travel sites need the same pieces: a
catalogue, a detail page with an itinerary, a comparison table, a booking form, and enough
SEO to be found. They are built here, wired together, and verified in a browser. Clone it,
swap `data/trips.ts`, ship it.
📖 **[Read the full documentation →](DOCUMENTATION.md)** — data model, theming, the ticket
motif, SEO and AEO, deployment, and recipes.
## What makes it different
**The trip pages tell you when to go.** Every destination page carries two charts — average
daily high by month, and rainfall by month — plus a one-line verdict naming the months.
They are `LineChart` and `BarChart` from VivekUI: pure inline SVG, rendered on the server,
with a visually hidden data table for screen readers. **There is no charting dependency in
this project.**
[](https://wanderly.vivekkumarsingh.in/destinations/bali#best-time)
**One motif, used consistently.** Every trip appears as a boarding-pass ticket stub: a mono
route strip (`LIS ✈ DPS`), a perforated tear line, and a semicircle punched out of each
side. It is about forty lines of CSS in `app/globals.css` — two `radial-gradient` masks
composited together — and it is the same component on the homepage, the destinations index,
the deals carousel and the search results.
**The itinerary is the money shot.** `Timeline`, with the day number in the marker and the
night's accommodation and meals as badges under each day.
## Quick start
Requires **Node.js 20.9+** (22 LTS recommended).
```bash
git clone https://github.com/intellectwithvivek/wanderly.git
cd wanderly
npm install
npm run dev
```
Open <http://localhost:3000>. That is the whole setup — there is no config file to fill in,
no CLI to run, and no design tokens to generate.
```bash
npm run build # production build
npm run start # serve the build
npm run lint # eslint
npm run typecheck # tsc --noEmit
```
## Deploy
[](https://vercel.com/new/clone?repository-url=https%3A%2F%2Fgithub.com%2Fintellectwithvivek%2Fwanderly&project-name=wanderly&repository-name=wanderly)
Then set your own domain in one place — `SITE.url` in [`data/site.ts`](data/site.ts) — and
the canonicals, Open Graph tags, sitemap and JSON-LD all follow.
## Making it yours
| To change | Edit |
|---|---|
| The trips — copy, prices, itineraries, climate, photos | [`data/trips.ts`](data/trips.ts) |
| Site name, domain, nav, promotion links | [`data/site.ts`](data/site.ts) |
| FAQ copy (feeds the page **and** the FAQPage schema from one string) | [`data/faq.ts`](data/faq.ts) |
| Structured data | [`data/schema.ts`](data/schema.ts) |
| The accent colour and the ticket motif | [`app/globals.css`](app/globals.css) |
The accent is seven custom properties. Change these and every component follows, because
every value in VivekUI is a CSS custom property:
```css
:root {
--vk-color-primary: #047857; /* emerald 700 */
--vk-color-primary-hover: #065f46;
--vk-color-primary-subtle: #ecfdf5;
/* … */
}
```
## What is in the box
**Routes** — `/` · `/destinations` · `/destinations/[slug]` (6 prerendered) · `/plan` ·
`/built-with` · a 404 · `sitemap.xml` · `robots.txt` · `llms.txt`
Every route is statically prerendered. The homepage revalidates hourly so the offer
countdowns stay live.
**SEO** — Metadata API per route with `metadataBase`, canonicals, Open Graph and Twitter
cards; `app/sitemap.ts` and `app/robots.ts` generated from the catalogue; exactly one `<h1>`
per page; server components by default.
**Structured data** — `TravelAgency` and `WebSite` on the homepage, `TouristTrip` with
`itinerary` and `offers` on each trip page, plus `BreadcrumbList` and `FAQPage`. Only
properties the types actually define, so it validates clean.
**AEO** — an FAQ block whose answers are the same strings as the FAQPage schema, and a
[`public/llms.txt`](public/llms.txt) with the trips, the prices and the attribution.
**Accessibility** — WCAG AA. One `h1` per page, no skipped heading levels, a skip link as
the first tab stop, visible 2px focus rings, `prefers-reduced-motion` honoured (the marquee
stops rather than slowing), every image with real alt text, and the charts backed by data
tables. Verified in a real browser: zero console errors, and no horizontal overflow at
390px or 1440px.
## What is not in this project
The dependency list is the point:
- **No** Tailwind, PostCSS plugin, or build-time CSS pipeline
- **No** Radix, CVA or clsx
- **No** Recharts, Chart.js, D3 or canvas — the charts are VivekUI
- **No** Emotion or styled-components, so no runtime style computation
- **No** icon package — the star rating and status glyphs are CSS
```
dependencies: next, react, react-dom, @the_viveksingh/vivek-ui
```
See [`/built-with`](https://wanderly.vivekkumarsingh.in/built-with) for every component used,
deep-linked to its documentation.
## Documentation
| | |
|---|---|
| [**DOCUMENTATION.md**](DOCUMENTATION.md) | The full guide — data model, theming, charts, SEO, AEO, deployment, recipes |
| [`/built-with`](https://wanderly.vivekkumarsingh.in/built-with) | Live component map: every section → the component that builds it |
| [`public/llms.txt`](public/llms.txt) | The machine-readable brief for answer engines |
| [VivekUI docs](https://ui.vivekkumarsingh.in/docs?utm_source=vivekui-template&utm_campaign=travel&utm_medium=readme) | The library itself |
## Powered by VivekUI
Built with ❤️ using VivekUI — **91 React components · 6 SVG charts · zero runtime
dependencies.** One install, one CSS import, no config.
```bash
npm i @the_viveksingh/vivek-ui
```
[Documentation](https://ui.vivekkumarsingh.in/docs?utm_source=vivekui-template&utm_campaign=travel&utm_medium=readme)
· [Components](https://ui.vivekkumarsingh.in/docs/components?utm_source=vivekui-template&utm_campaign=travel&utm_medium=readme)
· [Charts](https://ui.vivekkumarsingh.in/docs/charts?utm_source=vivekui-template&utm_campaign=travel&utm_medium=readme)
· [npm](https://www.npmjs.com/package/@the_viveksingh/vivek-ui)
· [GitHub](https://github.com/intellectwithvivek/vivek_UI)
· [Vivek Kumar Singh](https://vivekkumarsingh.in/?utm_source=vivekui-template&utm_campaign=travel&utm_medium=readme)
## Licence
[MIT](LICENSE). Use it for anything, commercial included.
The VivekUI credit in the footer is **removable** — it is one component,
[`components/site-footer.tsx`](components/site-footer.tsx). A ⭐ on
[the library](https://github.com/intellectwithvivek/vivek_UI) is appreciated instead.
Photographs are from [Unsplash](https://unsplash.com) under the Unsplash licence and are
hot-linked, not redistributed. Avatars are from [i.pravatar.cc](https://i.pravatar.cc).
Wanderly is a fictional company; the trips, prices and reviews are invented.
Explore similar templates
Compare previews and descriptions within the same stack and category.

SaaS-Boilerplate
SaaS-Boilerplate is an open-source SaaS starter template built with Next.js App Router, React 19, TypeScript, Tailwind CSS, and Shadcn UI.
Next.js · SaaS

Next-JS-Landing-Page-Starter-Template
A free Next.js landing page starter template written in Tailwind CSS and TypeScript, featuring built-in navbar, hero, features, CTA banner, and footer sections.
Next.js · Corporate Website

next-saas-starter
A free Next.js SaaS marketing landing page template from Blazity, using static generation and styled-components with no extra UI library.
Next.js · SaaS

startup-nextjs
Startup is a free, MIT-licensed Next.js template from NextJSTemplates for SaaS startups and corporate landing pages.
Next.js · SaaS

shadcn-landing-page
A Next.js landing page template built with Shadcn, TypeScript, and Tailwind, converted from a Shadcn-Vue version. It includes sections such as Navbar, mobile Sidebar, Hero, Pricing, FAQ, and Footer, and highlights responsive design, navigation, and dark mode.
Next.js · Corporate Website

shadcn-dashboard-landing-template
An open-source admin dashboard and marketing landing page template built on shadcn/ui and Tailwind CSS, with both Vite + React and Next.js versions in one repository.
Next.js · Admin dashboard
