以空中交通管制飞行进程板为视觉模型,项目按状态分栏显示为彩色纸条
strip — Hugo 作品集模板
作者 m0hss
Strip 是一个 Hugo 作品集主题,把项目展示成空中交通管制飞行进程板上的彩色纸条,按状态分栏,并支持修订记录与雷达扫描等视觉元素。
看看你的网站会是什么样
浏览真实页面截图,比较内容排版与手机效果。点击下方缩略图切换,放大查看整页细节。
全部页面与视图 3
截图用于了解视觉与布局,交互效果请以实际项目为准。
值得关注的模板亮点
从已有项目资料中,快速了解它的特点。
支持 amendment 修订记录:旧文本加删除线,新文本以红色手写体呈现
内置雷达扫描、交接日志和 squawk code 标签等主题化组件
提供 dark 与 light 两种配色,颜色令牌集中在单一 CSS 文件
自托管 IBM Plex Mono、IBM Plex Sans 与 Kalam 字体,无 JavaScript 也可完整阅读
模板详细介绍
Strip 是一个用于项目作品集的 Hugo 主题,视觉上模仿空中交通管制的飞行进程板。每个项目以彩色塑料纸条的形式出现在对应状态的 bay(栏位)中;当计划变更时,旧文本保留并加删除线,旁边用红色手写体显示修正内容,即 amendment(修订)。主题要求 Hugo extended 0.146.0 或更高版本,使用较新的布局系统(layouts/_partials/、layouts/_shortcodes/、layouts/_markup/)。
内容模型围绕 projects 与 logs 两类内容展开。项目通过 status 字段(PENDING、ACTIVE、LANDED、DIVERTED)决定所属 bay,date 仅用于在同一 bay 内按最新优先排序;type 字段映射为 SFTWR、DESGN、WRITE 或 MISC 等标签颜色。缺少或未知 status 的项目不会出现在任何纸条列表中,构建时会输出一条包含文件名的警告。修订需要 old、new 和 date 三个字段,缺失时会被忽略并输出警告。logs 是带日期的短笔记,显示在管制员日志本样式的页面上。标签会生成稳定的 4 位 squawk code。
主题提供 dark(默认,Radar room)和 light(Tower in daylight)两种配色,颜色令牌集中在 assets/css/tokens.css。字体自托管于 static/fonts/,包括 IBM Plex Mono、IBM Plex Sans 和仅用于修订的 Kalam。所有用户可见字符串位于 i18n/en.toml。页面在无 JavaScript 时也能完整阅读,ZULU 时钟和雷达扫描筛选属于增强功能。设计源文件 Strip Theme.html 仅作参考,不参与主题资源加载。
适合你的项目吗?
适用场景
- 为个人或团队项目建立具有航空管制视觉风格的作品集网站
- 展示项目状态流转与范围变更,用修订记录保留决策历史
- 以带日期的短日志形式记录开发或运营笔记
- 通过标签 squawk code 对项目进行分类与检索
适合人群
- 使用 Hugo 并希望获得非传统作品集外观的开发者或设计团队
- 需要展示项目状态与变更历史的个人作品集
- 偏好深色雷达室风格或浅色塔台风格界面的站点
上手与定制指南
结合仓库当前版本的说明,按下面的资料检查内容、配置与运行要求。
- 1
需要 Hugo extended 0.146.0 或更高版本
- 2
可通过 Hugo Module 或 git submodule 方式安装
- 3
从示例站点开始时,复制 exampleSite/content/ 以及 exampleSite/hugo.toml 中的 [params] 与 [[menus.main]] 配置块,但不要复制其 [module] 块
- 4
board 只显示 params.boardSections 中指定的 section(默认为 projects)
- 5
搜索页是普通内容页,需设置 layout: "search"
授权与来源资料
使用条件与限制
免费使用 · 保留许可声明本次收录的是公开仓库中采用 MIT 许可的免费版本;免费范围为该版本代码,不代表外部服务或第三方素材免费。
使用时需要遵守
- 允许免费使用、修改、商用和分发该版本代码。
- 分发代码副本或实质性部分时,保留原作者版权声明和完整 MIT 许可声明。
- 代码按现状提供;担保与责任限制以原许可证及适用法律为准。
额外费用与待核对事项
- 演示图片、字体、图标及其他第三方素材需按各自许可核对,不能仅凭代码的 MIT 许可判断。
- 域名、托管、数据库、支付或 AI 等外部服务可能另外收费。
- 使用该主题必须安装 Hugo extended 版本,且版本号不得低于 0.146.0,普通版 Hugo 无法使用。
- 主题依赖 Hugo 较新的布局系统目录结构,旧版 Hugo 的布局方式不兼容。
- 看板仅展示 params.boardSections 中指定 section 的页面,默认只显示 projects,其他 section 不会出现在看板上。
- 缺少或状态未知的项目不会出现在任何列表中,构建时仅输出一条警告。
- 每条修订必须同时提供 old、new 和 date 三个字段,缺任意一个都会被忽略并输出警告。
- 只有 tags 分类法会生成 squawk code,其他分类法(如默认的 categories)不会获得代码。
- Strip Theme.html 仅为设计参考文件,不参与主题资源加载,查看它需要启用 JavaScript 的浏览器。
- 字体为自托管的拉丁子集,采用 SIL Open Font License 1.1,与主题代码的 MIT 许可不同。
- 在线演示由 Netlify 从仓库根目录的 netlify.toml 构建,属于外部服务依赖。
查看原文依据
Permission is hereby granted, free of charge
许可证原文
Hugo **extended 0.146.0 or later**.
README 原文
The theme uses the newer layout system (`layouts/_partials/`, `layouts/_shortcodes/`, `layouts/_markup/`).
README 原文
The board only shows pages from `params.boardSections` (`projects` by default).
README 原文
A strip with a missing or unknown status is left off every strip list (board, radar scope, handover log, vectors, search, section and tag pages), and the build prints one warning that names the file.
README 原文
Each amendment needs `old`, `new` and a `date` (`YYYY-MM-DD`); one that lacks any of them is left out, and the build prints a warning that names the file.
README 原文
Only the `tags` taxonomy gets squawk codes: any other taxonomy a site builds, such as Hugo's default `categories`, is listed under its own name without codes.
README 原文
`Strip Theme.html` is the design source of truth, exported from the Claude design canvas "Strip Theme". Open it in a browser with JavaScript enabled. It is a reference only: no layout loads it and it is not part of the theme's assets.
README 原文
Fonts are self-hosted from `static/fonts/` (latin subsets, SIL Open Font License 1.1)
README 原文
https://github.com/m0hss/strip/blob/master/LICENSEhttps://github.com/m0hss/strip/blob/master/README.mdThe live demo is this example site, built by Netlify from `netlify.toml` at the repository root on every push to `master`.
README 原文
DeepSeek 根据仓库许可证和 README 整理 ·2026-10-10。结果仅覆盖已读取资料,依赖、图片、字体及后续条款变更以各自原文为准。
项目核对记录与介绍依据
模板资料
- 来源平台
- GitHub
- 资料与维护参考分
- 资料较完整 · 80 / 100
- 技术栈
- Hugo
- 网站类型
- 作品集
这个分数如何计算
本站按许可资料(最高30分)、演示链接(12分)、预览图(10分)、Star数(15分)、记录的维护时间(15分)、描述完整度(8分)、功能记录(5分)和分类资料(5分)计算。它不是代码、安全或性能测试,也不是 Google 评分;有链接不代表已实测可用。
这个项目需要核对什么
- 记录的仓库更新时间
- 2026-10-08
- 截图检查日期
- 2026-10-10
已收录演示链接。请用你的内容与屏幕尺寸检查;有演示不代表表单、认证或支付已经可用。
目录记录的主要技术栈是 Hugo。请通过依赖清单和锁文件核对实际版本与托管要求。这些说明基于收录资料,不代表代码审计或部署实测。
查看具体选型方法 →介绍的制作与核对状态
介绍由 AI 辅助整理目录与仓库资料。仓库作者不等于这篇介绍的审核者。
审核声明: [email protected] · 2026-10-10
查看当时使用的来源资料
SHA-256: 0f055e4ab4ded46f7c118213eb89f4cc02eb2aebbeb1774342d11e9117bfbfad
2026-10-10T13:10:06.431Z
来源文件 / 仓库# Strip
A Hugo theme for project portfolios, styled as an air-traffic-control **flight progress board**. Each project is a coloured plastic **strip** in a **bay** for its status. When a plan changes, the old text stays visible, struck through, with the correction handwritten beside it in red pen: an **amendment**.

**Live demo:** [strip-hugo.netlify.app](https://strip-hugo.netlify.app/)
## Requirements
Hugo **extended 0.146.0 or later**. The theme uses the newer layout system (`layouts/_partials/`, `layouts/_shortcodes/`, `layouts/_markup/`).
## Install
As a Hugo Module (recommended):
```bash
hugo mod init github.com/you/your-site
```
```toml
# hugo.toml
[module]
[[module.imports]]
path = "github.com/m0hss/strip"
```
Or as a classic theme, from your site's root:
```bash
git submodule add https://github.com/m0hss/strip.git themes/strip
```
```toml
# hugo.toml
theme = "strip"
```
Then:
```bash
hugo server -D
hugo --gc --minify
```
To start from the demo, copy `exampleSite/content/` into your site and the `[params]` and `[[menus.main]]` blocks from `exampleSite/hugo.toml` into yours (leave out its `[module]` block, which only points the demo at this repository). Replace the sample projects with your own.
The board only shows pages from `params.boardSections` (`projects` by default). A site without that section still builds: the bays show `SECTOR EMPTY`, and other sections render as plain lists and pages.
## Try the example site
```bash
cd exampleSite
hugo server
```
`exampleSite/hugo.toml` replaces the module with the repository root (`../..`), so you don't need a `themes` folder or a symlink. Every project and log in the example site is a fictional sample from the design.
The live demo is this example site, built by Netlify from `netlify.toml` at the repository root on every push to `master`.
## Configuration
```toml
[params]
theme = "dark" # "dark" (Radar room, default) or "light" (Tower in daylight)
boardSections = ["projects"] # sections whose pages become strips on the board
description = "..." # meta description fallback
# kicker = "STRIP PORTFOLIO" # optional: override the header lines
# boardTitle = "OPERATIONS BOARD"
[params.radar]
enable = true # radar scope under the board; false hides it
bays = ["ACTIVE"] # bays whose strips appear as contacts
[params.handover]
enable = true # shift handover log beside the radar; false hides it
entries = 3 # latest logs and amendments listed, newest first
logSections = ["logs"] # sections whose pages count as log entries
officer = "M. Sassi" # officer line and signature; both left out when unset
[params.footer]
credit = true # the "// BY FIXBYTE" link; false removes it
# Tags only. Hugo builds its default categories taxonomy unless the site
# declares its own, and a theme cannot switch it off.
[taxonomies]
tag = "tags"
[[menus.main]]
identifier = "board" # identifiers board, logs, about, sweep pick up i18n labels
name = "BOARD"
pageRef = "/"
weight = 10
[[menus.main]]
identifier = "logs"
name = "LOGS"
pageRef = "/logs"
weight = 20
[[menus.main]]
identifier = "about"
name = "ABOUT"
pageRef = "/about"
weight = 30
[[menus.main]]
identifier = "sweep"
name = "RADAR SWEEP"
pageRef = "/search"
weight = 40
```
The search page is an ordinary content page with `layout: "search"` (see `exampleSite/content/search.md`).
## Content model
### Projects (strips)
`hugo new projects/api-02-core-api-rewrite.md`
```yaml
---
title: "Core API Rewrite"
callsign: "API-02"
type: "software" # software → SFTWR (blue), design → DESGN (pink),
# writing → WRITE (green), anything else → MISC (buff)
status: "ACTIVE" # PENDING | ACTIVE | LANDED | DIVERTED
date: 2026-10-01 # shown as OPENED; orders strips within a bay
summary: "Migrating legacy REST endpoints to GraphQL."
opened_note: "Opened. Full REST-to-GraphQL migration planned." # optional
amendments:
- old: "Full schema migration for v1."
new: "Scope reduced to read-only queries for v1."
date: 2026-10-05
rotate: -1 # optional: -1, 1 or 2 (degrees)
tags: ["graphql"]
draft: true
---
```
Status decides the bay. The date only orders strips within a bay, newest first. A strip with a missing or unknown status is left off every strip list (board, radar scope, handover log, vectors, search, section and tag pages), and the build prints one warning that names the file. The latest amendment appears on the strip; the project page shows the full **Amendment log**. Each amendment needs `old`, `new` and a `date` (`YYYY-MM-DD`); one that lacks any of them is left out, and the build prints a warning that names the file.
### Logs
Short dated notes in `content/logs/`, shown on a controller's logpad (ruled paper with a red margin line).
### Tags (squawk codes)
Each tag gets a stable 4-digit code made from its name (digits 0 to 7, like a real transponder code). Only the `tags` taxonomy gets squawk codes: any other taxonomy a site builds, such as Hugo's default `categories`, is listed under its own name without codes.
## Writing in Markdown
| Element | How |
| --- | --- |
| RX transcript | Any blockquote: `> Ship reads first.` gets the `> RX:` prefix |
| NOTAM | `{{</* notam */>}}Read-only mode in effect.{{</* /notam */>}}` (optional `title="..."`), or a GitHub-style alert `> [!NOTE]` |
| Amendment in text | `{{</* amend old="Cutover in November." new="Cutover moved to Q1." date="2026-10-05" */>}}` |
| Teletype | Fenced code blocks: green on near-black, keywords amber |
| Figure | Hugo's built-in `{{</* figure */>}}`, with a mono caption |
## Design
`Strip Theme.html` is the design source of truth, exported from the Claude design canvas "Strip Theme". Open it in a browser with JavaScript enabled. It is a reference only: no layout loads it and it is not part of the theme's assets.
- Colour tokens live in `assets/css/tokens.css` and nowhere else. The light and dark values come from the component sheet.
- Fonts are self-hosted from `static/fonts/` (latin subsets, SIL Open Font License 1.1): IBM Plex Mono for data, IBM Plex Sans for body text, and Kalam only for amendments.
- Every user-visible string lives in `i18n/en.toml`.
- The page reads fully without JavaScript. The ZULU clock and the radar sweep filter are enhancements.
## Licence
[MIT](LICENSE), ©2026 [FixByte](https://studio.fixbyte.be).
看看同类模板
对比同技术栈与用途的模板,找到更适合的视觉与内容结构。

hugo-PaperMod
PaperMod 是 Hugo 生态里知名度较高的主题之一,定位很明确:给博客和轻量作品集站点提供一套干净、响应式的阅读界面。
Hugo · 作品集

Congo
Congo 是一款为 Hugo 设计的现代内容主题,核心定位是让内容本身成为页面焦点。 它基于 Tailwind CSS 3.0 构建,整体布局完全响应式,视觉风格干净且克制,没有多余装饰。
Hugo · 博客

toha
Toha 是一款面向个人作品集场景的 Hugo 主题,以极简设计和响应式布局为核心,适合用来搭建个人主页、作品展示或技术博客。
Hugo · 作品集

hugo-profile
A highly customizable and mobile first Hugo template for personal portfolio and blog.
Hugo · 作品集

hugo-theme-introduction
Minimal, single page, smooth-scrolling theme for Hugo static site generator.
Hugo · 作品集

hugo-theme-console
hugo-theme-console 是一款以系统终端为灵感的极简 Hugo 主题,基于 Terminal CSS 构建,整体视觉干净利落,强调快速加载与响应式布局。
Hugo · 作品集
