UI Templates — Human-Designed Template Library
380 pre-built HTML/CSS/JS templates from 9 professional template libraries.
All templates are human-designed with real design quality — NOT AI-generated.
The agent MUST use an existing template as the starting point. Never write HTML/CSS/JS from scratch.
1. How to Find Templates
Step 1 — Determine the Category
Match the user's request to one or more categories from §4 Category Reference.
Be precise — match the user's actual stated need, not a generalized assumption.
- "I want a restaurant website" →
restaurant
- "Build me a portfolio" →
portfolio
- "I need a blog" →
blog
- "Make a landing page for my app" →
app or landing
- Unclear or general request → read 2-3 candidate category catalogs and compare
Step 2 — Read the Category Catalog
Each category has a JSON catalog file: catalogs/{category}.json (relative to this skill directory).
read_file("skills/ui-templates/catalogs/{category}.json")
If no specific category matches, use catalogs/multipurpose.json.
For broad requests, read multiple catalogs (e.g., both personal and portfolio).
Step 3 — Match Templates Using Catalog Metadata
Each catalog entry contains rich metadata for intelligent selection:
| Field |
Type |
How to Use |
matchSignals |
string[] |
Primary matching — keyword array. Match against user's request keywords. |
description |
string |
150-700 char detailed visual/structural description. Use to evaluate fit and to present to user. |
colorScheme |
"dark" / "light" / "mixed" |
Match user's style preference. |
visualStyle |
string |
One-line visual atmosphere summary. Use to present to user. |
layout |
string |
"single-page" / "multi-page" / "sidebar" / "fullscreen" / "grid" / "dashboard" |
features |
string[] |
Functional capabilities (e.g., "responsive", "search", "accordion"). |
sections |
string[] |
Page section types (e.g., "hero", "pricing", "contact"). |
colorPalette |
object |
Full color system with named roles. Use during customization. |
typography |
object |
Font family, weights, sizes, spacing, style. Use during customization. |
source |
string |
Template source — indicates quality tier (see §3). |
Matching priority:
matchSignals keyword overlap with user request
features and sections matching user's functional needs
colorScheme + visualStyle matching user's aesthetic preference
source quality tier (prefer higher tiers)
Step 4 — Download and Use the Template
Templates are hosted on GCS. Each catalog entry has a downloadUrl field pointing to a .zip file.
# Download and extract the template
curl -sL "{downloadUrl}" -o /tmp/template.zip
mkdir -p output/website
unzip -o /tmp/template.zip -d output/website/
rm /tmp/template.zip
After extraction, use the indexPath field from the catalog entry to locate the index.html within the extracted directory.
2. Customization Guide
When customizing a template, focus on content replacement while preserving the human-designed structure:
- Page title & headings — Update
<title> and main headings
- Navigation — Adjust nav links to match actual sections
- Body text — Replace lorem ipsum with real content
- Images — Keep template originals unless user provides their own
- Colors — Use
colorPalette to understand which CSS properties to modify for brand colors
- Fonts — Keep the template's fonts (already well-chosen by human designers)
- Sections — Add/remove/reorder sections to match user needs
- Responsive — Most templates are already responsive. Check
breakpoints field.
3. Template Sources & Quality Tiers
Source quality preference: web3 > html5up > styleshout > startbootstrap > tooplate > themefisher > templatemo
Tier 1 — Premium (prefer these)
- Web3 (14 templates): Crypto/DeFi/NFT dashboards and tools. Dark themes, real-time data, Chart.js. Best for blockchain projects.
- HTML5 UP (29 templates): Clean, modern, responsive. Best overall design quality. Pure HTML/CSS/JS.
- StyleShout (36 templates): Professional, polished. Great for portfolios and personal sites.
- Start Bootstrap (12 templates): Bootstrap-based, well-structured. Good for business sites.
Tier 2 — Good
- Tooplate (88 templates): Large variety, decent quality. Good for specific niches.
- ThemeFisher (42 templates): Bootstrap-based, professional.
- AdminMart (1 template): Dashboard template.
- GitHub (2 templates): Community-contributed templates.
Tier 3 — Supplementary
- TemplateMo (156 templates): Largest collection, variable quality. Good for niche categories.
4. Category Reference (36 categories)
| Category |
Description |
Count |
Example Use Case |
multipurpose |
General-purpose templates |
83 |
Generic websites, quick prototypes |
business |
Business / Corporate / Consulting |
56 |
Company sites, consulting firms |
personal |
Personal pages / Resume / CV |
24 |
Personal resume, self-introduction |
blog |
Blog / Magazine / News |
20 |
Personal blog, news site |
agency |
Creative agency / Studio |
21 |
Design firms, digital marketing |
restaurant |
Restaurant / Cafe / Bakery |
15 |
Restaurants, coffee shops, bakeries |
crypto |
Crypto / DeFi / NFT / Web3 |
14 |
Trading platforms, wallets, DeFi |
ecommerce |
E-commerce / Shop / Fashion |
11 |
Online stores, fashion brands |
portfolio |
Portfolio / Showcase |
11 |
Designer portfolios, project showcase |
app |
App landing page |
11 |
Mobile app promotion pages |
dashboard |
Dashboard / Admin panel |
11 |
Backend admin, data panels |
travel |
Travel / Hotel / Vacation |
10 |
Travel agencies, hotel booking |
landing |
Landing page |
8 |
Product landing pages, sign-up pages |
photography |
Photography / Image showcase |
7 |
Photographer portfolios, galleries |
coming_soon |
Coming soon / Countdown |
7 |
Product teasers, launch countdowns |
saas |
SaaS / Hosting services |
7 |
SaaS product pages, cloud services |
event |
Event / Conference |
5 |
Conferences, event registration |
fitness |
Fitness / Sports |
5 |
Gyms, sports brands |
automotive |
Automotive / Taxi / Rental |
5 |
Car dealers, rental services |
other |
Other / Miscellaneous |
5 |
Uncategorized templates |
gallery |
Image gallery |
4 |
Photo galleries, art exhibitions |
nature |
Nature / Eco / Organic |
4 |
Environmental orgs, organic brands |
beauty |
Beauty / Salon / SPA |
4 |
Beauty salons, barber shops |
food |
Food / Recipes |
3 |
Food blogs, recipe sharing |
medical |
Medical / Healthcare |
4 |
Clinics, medical services |
real_estate |
Real estate / Interior design |
4 |
Real estate agencies, interior design |
technology |
Technology / Innovation |
4 |
Tech companies, innovation products |
component |
UI components |
4 |
Forms, admin panel components |
music |
Music / Band |
3 |
Bands, musicians |
education |
Education / Training |
3 |
Schools, online courses |
charity |
Charity / Nonprofit |
2 |
Charity organizations |
wedding |
Wedding |
1 |
Wedding invitations |
construction |
Construction / Building |
1 |
Construction companies |
coworking |
Coworking space |
1 |
Coworking spaces |
job |
Job / Career |
1 |
Job portals |
wellness |
Wellness / Meditation |
1 |
Meditation, mental health |
5. Catalog Entry Format
Full example of an enriched catalog entry:
{
"id": "html5up-editorial",
"source": "html5up",
"dir": "html5up/editorial",
"name": "Editorial",
"title": "Editorial by HTML5 UP",
"category": "blog",
"hasIndex": true,
"hasCss": true,
"hasJs": true,
"hasImages": true,
"sizeKB": 3531,
"indexPath": "html5up/editorial/index.html",
"description": "Sidebar-layout blog/magazine template with a persistent left sidebar...",
"colorScheme": "light",
"primaryColor": "#f56a6a",
"colorPalette": {
"background": "#ffffff",
"sidebarBg": "#f5f6f7",
"text": "#7f888f",
"heading": "#3d4449",
"accent": "#f56a6a (coral-red)",
"accentHover": "#f67878",
"accentActive": "#f45c5c",
"border": "#eff1f2",
"muted": "#9fa3a6"
},
"typography": {
"fontFamily": "Open Sans (body) + Roboto Slab (headings)",
"headingWeight": "700",
"bodyWeight": "400",
"bodySize": "13pt",
"letterSpacing": "wide (0.075em)",
"style": "Serif+sans-serif dual font pairing. Editorial sophistication."
},
"layout": "sidebar",
"layoutDetails": "Two-column: fixed left sidebar + scrollable main. Sidebar collapses to hamburger on mobile.",
"visualStyle": "Editorial, magazine-like. Coral-red accent. Serif+sans-serif font pairing.",
"features": ["responsive", "search", "hamburger-menu", "social-links", "accordion"],
"sections": ["header", "navigation", "hero", "features", "blog", "contact", "footer"],
"techStack": ["jquery", "font-awesome", "google-fonts"],
"breakpoints": [360, 480, 736, 980, 1280, 1680],
"matchSignals": ["blog", "magazine", "editorial", "sidebar", "search", "articles", "coral", "serif"]
}
6. Important Notes
- All 380 templates are usable — every template has an
index.html file. Use indexPath to find it under ui-templates/.
- Category catalogs — read
catalogs/{category}.json for enriched metadata.
- Keep the human design — these templates look good because humans designed them. Don't over-modify the CSS structure.
- Use colorPalette for customization — when the user has brand colors, use
colorPalette to understand which CSS colors to replace.
- Responsive — most templates are already responsive. Check
breakpoints for responsive behavior.
1---2name: ui-templates3description: Human-designed UI template library with 380 templates from 9 professional sources. Use for any web page creation: landing pages, portfolios, business sites, dashboards, crypto/web3, etc. All templates are real human-designed HTML/CSS/JS — no AI-generated slop.4---56# UI Templates — Human-Designed Template Library78> 380 pre-built HTML/CSS/JS templates from 9 professional template libraries.9> All templates are human-designed with real design quality — NOT AI-generated.10> The agent MUST use an existing template as the starting point. Never write HTML/CSS/JS from scratch.1112---1314## 1. How to Find Templates1516### Step 1 — Determine the Category1718Match the user's request to one or more categories from §4 Category Reference.19Be **precise** — match the user's actual stated need, not a generalized assumption.2021- "I want a restaurant website" → `restaurant`22- "Build me a portfolio" → `portfolio`23- "I need a blog" → `blog`24- "Make a landing page for my app" → `app` or `landing`25- Unclear or general request → read 2-3 candidate category catalogs and compare2627### Step 2 — Read the Category Catalog2829Each category has a JSON catalog file: `catalogs/{category}.json` (relative to this skill directory).3031```32read_file("skills/ui-templates/catalogs/{category}.json")33```3435If no specific category matches, use `catalogs/multipurpose.json`.36For broad requests, read multiple catalogs (e.g., both `personal` and `portfolio`).3738### Step 3 — Match Templates Using Catalog Metadata3940Each catalog entry contains rich metadata for intelligent selection:4142| Field | Type | How to Use |43|-------|------|------------|44| `matchSignals` | string[] | **Primary matching** — keyword array. Match against user's request keywords. |45| `description` | string | 150-700 char detailed visual/structural description. Use to evaluate fit and to present to user. |46| `colorScheme` | `"dark"` / `"light"` / `"mixed"` | Match user's style preference. |47| `visualStyle` | string | One-line visual atmosphere summary. Use to present to user. |48| `layout` | string | `"single-page"` / `"multi-page"` / `"sidebar"` / `"fullscreen"` / `"grid"` / `"dashboard"` |49| `features` | string[] | Functional capabilities (e.g., `"responsive"`, `"search"`, `"accordion"`). |50| `sections` | string[] | Page section types (e.g., `"hero"`, `"pricing"`, `"contact"`). |51| `colorPalette` | object | Full color system with named roles. Use during customization. |52| `typography` | object | Font family, weights, sizes, spacing, style. Use during customization. |53| `source` | string | Template source — indicates quality tier (see §3). |5455**Matching priority:**561. `matchSignals` keyword overlap with user request572. `features` and `sections` matching user's functional needs583. `colorScheme` + `visualStyle` matching user's aesthetic preference594. `source` quality tier (prefer higher tiers)6061### Step 4 — Download and Use the Template6263Templates are hosted on GCS. Each catalog entry has a `downloadUrl` field pointing to a `.zip` file.6465```bash66# Download and extract the template67curl -sL "{downloadUrl}" -o /tmp/template.zip68mkdir -p output/website69unzip -o /tmp/template.zip -d output/website/70rm /tmp/template.zip71```7273After extraction, use the `indexPath` field from the catalog entry to locate the `index.html` within the extracted directory.7475---7677## 2. Customization Guide7879When customizing a template, focus on content replacement while preserving the human-designed structure:80811. **Page title & headings** — Update `<title>` and main headings822. **Navigation** — Adjust nav links to match actual sections833. **Body text** — Replace lorem ipsum with real content844. **Images** — Keep template originals unless user provides their own855. **Colors** — Use `colorPalette` to understand which CSS properties to modify for brand colors866. **Fonts** — Keep the template's fonts (already well-chosen by human designers)877. **Sections** — Add/remove/reorder sections to match user needs888. **Responsive** — Most templates are already responsive. Check `breakpoints` field.8990---9192## 3. Template Sources & Quality Tiers9394**Source quality preference**: `web3` > `html5up` > `styleshout` > `startbootstrap` > `tooplate` > `themefisher` > `templatemo`9596### Tier 1 — Premium (prefer these)97- **Web3** (14 templates): Crypto/DeFi/NFT dashboards and tools. Dark themes, real-time data, Chart.js. Best for blockchain projects.98- **HTML5 UP** (29 templates): Clean, modern, responsive. Best overall design quality. Pure HTML/CSS/JS.99- **StyleShout** (36 templates): Professional, polished. Great for portfolios and personal sites.100- **Start Bootstrap** (12 templates): Bootstrap-based, well-structured. Good for business sites.101102### Tier 2 — Good103- **Tooplate** (88 templates): Large variety, decent quality. Good for specific niches.104- **ThemeFisher** (42 templates): Bootstrap-based, professional.105- **AdminMart** (1 template): Dashboard template.106- **GitHub** (2 templates): Community-contributed templates.107108### Tier 3 — Supplementary109- **TemplateMo** (156 templates): Largest collection, variable quality. Good for niche categories.110111---112113## 4. Category Reference (36 categories)114115| Category | Description | Count | Example Use Case |116|----------------|--------------------------------------|-------|-------------------------------------|117| `multipurpose` | General-purpose templates | 83 | Generic websites, quick prototypes |118| `business` | Business / Corporate / Consulting | 56 | Company sites, consulting firms |119| `personal` | Personal pages / Resume / CV | 24 | Personal resume, self-introduction |120| `blog` | Blog / Magazine / News | 20 | Personal blog, news site |121| `agency` | Creative agency / Studio | 21 | Design firms, digital marketing |122| `restaurant` | Restaurant / Cafe / Bakery | 15 | Restaurants, coffee shops, bakeries |123| `crypto` | Crypto / DeFi / NFT / Web3 | 14 | Trading platforms, wallets, DeFi |124| `ecommerce` | E-commerce / Shop / Fashion | 11 | Online stores, fashion brands |125| `portfolio` | Portfolio / Showcase | 11 | Designer portfolios, project showcase |126| `app` | App landing page | 11 | Mobile app promotion pages |127| `dashboard` | Dashboard / Admin panel | 11 | Backend admin, data panels |128| `travel` | Travel / Hotel / Vacation | 10 | Travel agencies, hotel booking |129| `landing` | Landing page | 8 | Product landing pages, sign-up pages |130| `photography` | Photography / Image showcase | 7 | Photographer portfolios, galleries |131| `coming_soon` | Coming soon / Countdown | 7 | Product teasers, launch countdowns |132| `saas` | SaaS / Hosting services | 7 | SaaS product pages, cloud services |133| `event` | Event / Conference | 5 | Conferences, event registration |134| `fitness` | Fitness / Sports | 5 | Gyms, sports brands |135| `automotive` | Automotive / Taxi / Rental | 5 | Car dealers, rental services |136| `other` | Other / Miscellaneous | 5 | Uncategorized templates |137| `gallery` | Image gallery | 4 | Photo galleries, art exhibitions |138| `nature` | Nature / Eco / Organic | 4 | Environmental orgs, organic brands |139| `beauty` | Beauty / Salon / SPA | 4 | Beauty salons, barber shops |140| `food` | Food / Recipes | 3 | Food blogs, recipe sharing |141| `medical` | Medical / Healthcare | 4 | Clinics, medical services |142| `real_estate` | Real estate / Interior design | 4 | Real estate agencies, interior design |143| `technology` | Technology / Innovation | 4 | Tech companies, innovation products |144| `component` | UI components | 4 | Forms, admin panel components |145| `music` | Music / Band | 3 | Bands, musicians |146| `education` | Education / Training | 3 | Schools, online courses |147| `charity` | Charity / Nonprofit | 2 | Charity organizations |148| `wedding` | Wedding | 1 | Wedding invitations |149| `construction` | Construction / Building | 1 | Construction companies |150| `coworking` | Coworking space | 1 | Coworking spaces |151| `job` | Job / Career | 1 | Job portals |152| `wellness` | Wellness / Meditation | 1 | Meditation, mental health |153154---155156## 5. Catalog Entry Format157158Full example of an enriched catalog entry:159160```json161{162 "id": "html5up-editorial",163 "source": "html5up",164 "dir": "html5up/editorial",165 "name": "Editorial",166 "title": "Editorial by HTML5 UP",167 "category": "blog",168 "hasIndex": true,169 "hasCss": true,170 "hasJs": true,171 "hasImages": true,172 "sizeKB": 3531,173 "indexPath": "html5up/editorial/index.html",174 "description": "Sidebar-layout blog/magazine template with a persistent left sidebar...",175 "colorScheme": "light",176 "primaryColor": "#f56a6a",177 "colorPalette": {178 "background": "#ffffff",179 "sidebarBg": "#f5f6f7",180 "text": "#7f888f",181 "heading": "#3d4449",182 "accent": "#f56a6a (coral-red)",183 "accentHover": "#f67878",184 "accentActive": "#f45c5c",185 "border": "#eff1f2",186 "muted": "#9fa3a6"187 },188 "typography": {189 "fontFamily": "Open Sans (body) + Roboto Slab (headings)",190 "headingWeight": "700",191 "bodyWeight": "400",192 "bodySize": "13pt",193 "letterSpacing": "wide (0.075em)",194 "style": "Serif+sans-serif dual font pairing. Editorial sophistication."195 },196 "layout": "sidebar",197 "layoutDetails": "Two-column: fixed left sidebar + scrollable main. Sidebar collapses to hamburger on mobile.",198 "visualStyle": "Editorial, magazine-like. Coral-red accent. Serif+sans-serif font pairing.",199 "features": ["responsive", "search", "hamburger-menu", "social-links", "accordion"],200 "sections": ["header", "navigation", "hero", "features", "blog", "contact", "footer"],201 "techStack": ["jquery", "font-awesome", "google-fonts"],202 "breakpoints": [360, 480, 736, 980, 1280, 1680],203 "matchSignals": ["blog", "magazine", "editorial", "sidebar", "search", "articles", "coral", "serif"]204}205```206207---208209## 6. Important Notes210211- **All 380 templates are usable** — every template has an `index.html` file. Use `indexPath` to find it under `ui-templates/`.212- **Category catalogs** — read `catalogs/{category}.json` for enriched metadata.213- **Keep the human design** — these templates look good because humans designed them. Don't over-modify the CSS structure.214- **Use colorPalette for customization** — when the user has brand colors, use `colorPalette` to understand which CSS colors to replace.215- **Responsive** — most templates are already responsive. Check `breakpoints` for responsive behavior.