六条线路均配有逐日行程时间线、包含与不包含清单、出发日历和十二个月气候数据
wanderly — Next.js 企业官网模板
作者 intellectwithvivek
Wanderly 是一个基于 Next.js 的免费旅行网站模板,面向精品旅行社,内置六条线路的行程、气候图表与预订相关页面。
看看你的网站会是什么样
浏览真实页面截图,比较内容排版与手机效果。点击下方缩略图切换,放大查看整页细节。
全部页面与视图 2
截图用于了解视觉与布局,交互效果请以实际项目为准。
值得关注的模板亮点
从已有项目资料中,快速了解它的特点。
目的地页使用行内 SVG 折线图与柱状图展示月均高温和降雨量,并附屏幕阅读器可读的数据表
统一的登机牌票根视觉母题,以约四十行 CSS 实现,复用于首页、目的地索引、优惠轮播和搜索结果
每个路由静态预渲染,首页按小时重新验证以保持倒计时更新
内置 Metadata API、sitemap、robots、llms.txt 以及 TravelAgency、TouristTrip、FAQPage 等结构化数据
数据集中在 data/trips.ts、data/site.ts、data/faq.ts 等文件,替换内容无需改动组件
模板详细介绍
Wanderly 是一个用 Next.js 构建的旅行网站模板,定位为精品旅行社的完整站点,而非只有占位文案的落地页。它围绕六条虚构线路(巴厘岛、圣托里尼、京都、瑞士阿尔卑斯、拉达克、冰岛)组织内容,每条线路都配有九天或十天的逐日行程、包含与不包含项目清单、出发日历,以及十二个月的气候数据。
界面基于 VivekUI 组件库搭建,项目自身没有引入 Tailwind、图表库或图标包,图表由组件库以行内 SVG 在服务端渲染,并附带供屏幕阅读器使用的隐藏数据表。路由包括首页、目的地列表、六个预渲染的目的地详情页、行程规划页、built-with 页和 404,另生成 sitemap.xml、robots.txt 与 llms.txt。首页按小时重新验证,以保持优惠倒计时更新。
SEO 与结构化数据是模板的一部分:每个路由通过 Metadata API 设置 metadataBase、canonical、Open Graph 与 Twitter 卡片,并输出 TravelAgency、WebSite、TouristTrip、BreadcrumbList 和 FAQPage 等 schema。无障碍方面声明符合 WCAG AA,包括每页一个 h1、跳转链接、可见焦点环、尊重 prefers-reduced-motion,以及为图片提供替代文本。
使用限制:仓库采用 MIT 许可,免费范围是该版本代码,允许使用、修改、商用和分发,但分发时需保留版权与许可声明。演示图片来自 Unsplash 并以热链接方式引用,头像来自 i.pravatar.cc,这些第三方素材需按各自许可核对。模板中的公司、线路、价格和评论均为虚构。
适合你的项目吗?
适用场景
- 为精品旅行社或定制旅行品牌搭建展示六条左右线路的官网
- 需要逐日行程、出发日期和气候参考信息的旅行产品详情页
- 希望以少量依赖实现服务端渲染图表与结构化数据的 Next.js 项目
- 作为学习 Next.js 路由、SEO 元数据与结构化数据组织的参考站点
适合人群
- 经营小型旅行线路、需要现成内容结构的旅行社
- 熟悉 Next.js 与 TypeScript、希望直接替换数据文件的前端开发者
- 需要可商用 MIT 许可模板的个人或团队项目
- 关注 WCAG AA 无障碍与结构化数据实践的网站构建者
上手与定制指南
结合仓库当前版本的说明,按下面的资料检查内容、配置与运行要求。
- 1
需要 Node.js 20.9 或更高版本,推荐使用 22 LTS
- 2
克隆仓库后执行 npm install 与 npm run dev,无需填写配置文件或运行 CLI
- 3
部署前在 data/site.ts 中设置 SITE.url,canonical、Open Graph、sitemap 与 JSON-LD 会随之更新
- 4
线路文案、价格、行程、气候与照片在 data/trips.ts 中修改,FAQ 文案在 data/faq.ts 中修改
- 5
演示图片来自 Unsplash 且为热链接,头像来自 i.pravatar.cc,商用前需自行核对第三方素材许可
授权与来源资料
使用条件与限制
免费使用 · 保留许可声明本次收录的是公开仓库中采用 MIT 许可的免费版本;免费范围为该版本代码,不代表外部服务或第三方素材免费。
使用时需要遵守
- 允许免费使用、修改、商用和分发该版本代码。
- 分发代码副本或实质性部分时,保留原作者版权声明和完整 MIT 许可声明。
- 代码按现状提供;担保与责任限制以原许可证及适用法律为准。
额外费用与待核对事项
- 演示图片、字体、图标及其他第三方素材需按各自许可核对,不能仅凭代码的 MIT 许可判断。
- 域名、托管、数据库、支付或 AI 等外部服务可能另外收费。
- 演示照片来自 Unsplash 并按 Unsplash 许可热链接引用、不再分发;头像来自 i.pravatar.cc。这些第三方素材不随 MIT 代码许可一并授权,商用前需自行核对各自许可。
- 模板中的公司、线路、价格与评论均为虚构内容,上线前必须替换为真实信息,不能直接作为真实旅行社的对外内容使用。
查看原文依据
Permission is hereby granted, free of charge
许可证原文
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).
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.
README 原文
DeepSeek 根据仓库许可证和 README 整理 ·2026-10-04。结果仅覆盖已读取资料,依赖、图片、字体及后续条款变更以各自原文为准。
项目核对记录与介绍依据
模板资料
- 来源平台
- GitHub
- 资料与维护参考分
- 资料较完整 · 83 / 100
- 技术栈
- Next.js · React
- 网站类型
- 企业官网
这个分数如何计算
本站按许可资料(最高30分)、演示链接(12分)、预览图(10分)、Star数(15分)、记录的维护时间(15分)、描述完整度(8分)、功能记录(5分)和分类资料(5分)计算。它不是代码、安全或性能测试,也不是 Google 评分;有链接不代表已实测可用。
这个项目需要核对什么
- 记录的仓库更新时间
- 2026-08-29
- 截图检查日期
- 2026-10-04
已收录演示链接。请用你的内容与屏幕尺寸检查;有演示不代表表单、认证或支付已经可用。
目录记录的主要技术栈是 Next.js。请通过依赖清单和锁文件核对实际版本与托管要求。这些说明基于收录资料,不代表代码审计或部署实测。
查看具体选型方法 →介绍的制作与核对状态
介绍由 AI 辅助整理目录与仓库资料。仓库作者不等于这篇介绍的审核者。
审核声明: codex-user-requested-batch-review-20261017 · 2026-10-16
查看当时使用的来源资料
SHA-256: 6d8f25939af2c867ba4bc18358f4db02535c2d56393b6f059bd0954c59fc792c
2026-10-04T08:39:34.687Z
来源文件 / 仓库<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.
看看同类模板
对比同技术栈与用途的模板,找到更适合的视觉与内容结构。

SaaS-Boilerplate
🚀🎉📚 SaaS Boilerplate built with Next.js + Tailwind CSS + Shadcn UI + TypeScript. ⚡️ Full-stack React applic…
Next.js · SaaS

Next-JS-Landing-Page-Starter-Template
🚀 Free NextJS Landing Page Template written in Tailwind CSS 3 and TypeScript ⚡️ Made with developer experienc…
Next.js · 企业官网

next-saas-starter
⚡️ Free Next.js responsive landing page template for SaaS products made using JAMStack architecture.
Next.js · SaaS

startup-nextjs
Startup is free Next.js template for SaaS startups comes with all the essential pages, components, and section…
Next.js · SaaS

shadcn-landing-page
New design 🎉 Nextjs + Shadcn + TypeScript + Tailwind. Landing page template ease-to-use
Next.js · 企业官网

shadcn-dashboard-landing-template
Accelerate your development with a sleek, open-source admin dashboard and landing page built on Vite-React, Ne…
Next.js · 后台
