@press2ai/theme-specialist-glossy
v3.1.1
Published
Classless, AI-first glossy theme. Framework-agnostic templates (Hono, Astro, raw HTML). Semantic HTML, Schema.org microdata, JSON-LD — built for LLM crawlers.
Maintainers
Readme
@press2ai/theme-specialist-glossy
Classless, AI-first theme. Semantic HTML + Schema.org + JSON-LD. Works with Hono, Astro, or any framework that outputs HTML.
Install
npm install @press2ai/theme-specialist-glossyUsage — Hono / Cloudflare Workers
import { layout, profileCard, profileArticle } from '@press2ai/theme-specialist-glossy/templates';
app.get('/', (c) => c.html(layout({ title: 'Katalog' }, cards)));
app.get('/:slug', (c) => c.html(layout({ title: name }, profileArticle(profile))));Usage — Astro
---
import Layout from '@press2ai/theme-specialist-glossy/Layout.astro';
import ProfileArticle from '@press2ai/theme-specialist-glossy/ProfileArticle.astro';
import '@press2ai/theme-specialist-glossy/styles/glossy.css';
---
<Layout title={name}>
<ProfileArticle profile={profile} />
</Layout>Exports
| Path | What |
|---|---|
| @press2ai/theme-specialist-glossy | profileSchema, Profile type, getJsonLd, getAiManifest |
| @press2ai/theme-specialist-glossy/templates | layout, hero, profileCard, profileArticle |
| @press2ai/theme-specialist-glossy/styles/glossy.css | Classless CSS (~12 KB, no JS) |
| @press2ai/theme-specialist-glossy/*.astro | Astro wrappers (thin, call templates internally) |
Architecture
CSS (glossy.css) ← classless, styles by semantic tags
↑
templates/*.ts ← pure functions → HTML strings (single source of truth)
↑
components/*.astro ← thin wrappers for Astro DXOne set of templates, zero divergence between frameworks.
Hosting compatibility
| Platform | Runtime | What you get |
|---|---|---|
| GitHub Pages (Astro) | Static / SSG | Pre-built HTML + CSS. Zero cost, zero backend. Profile pages generated at build time from profile.json. |
| Cloudflare Workers (Hono) | Edge SSR | Dynamic HTML from D1/KV. Database queries, opt-out forms, API endpoints (catalog.json, llms.txt). Free tier: 100k req/day. |
| Cloudflare Pages (Astro SSR) | Edge SSR | Astro with @astrojs/cloudflare adapter. D1/KV bindings via Astro.locals. Middle ground — Astro DX + edge database. |
GitHub Pages = static profiles, no server needed. Good for claimed/verified personal pages.
Cloudflare Workers = full SSR, database, forms, API. Good for catalogs, directories, dynamic listings. Templates work directly — c.html(layout(...)).
Cloudflare Pages = if you want Astro's routing/islands AND server-side data. Same templates under the hood, Astro components on top.
License
MIT
