1
0
Fork 0
mirror of https://github.com/chobbledotcom/chobble-template.git synced 2026-04-29 21:26:33 +01:00
The Chobble template - an Eleventy site, built with Nix https://example.chobble.com
  • JavaScript 83.4%
  • SCSS 7.4%
  • HTML 5.4%
  • XSLT 3.2%
  • TypeScript 0.3%
  • Other 0.2%
Find a file
stefan burke db3856c8fa
Replace header_intro and heading_level with intro_content (#1368)
Consolidates the redundant `header_intro` (markdown rendered via styled
section-header partial) and `intro` (markdown rendered as `.prose`) block
fields into a single `intro_content` markdown field rendered as `.prose`.
Removes the `heading_level` field — markdown headings inside `intro_content`
already control the section's heading hierarchy, and per-item titles inside
features/image-cards/buy-options now hardcode to `<h3>`.

`figure_heading_level` on `split-buy-options` is kept since it controls the
single product card title and uses a distinct field name.

https://claude.ai/code/session_01EC6yTEeQcKgLJveH8jJCbX

Co-authored-by: Claude <noreply@anthropic.com>
2026-04-29 09:33:20 +00:00
.claude/agents Extract shared js-toolkit package from utility code (#749) 2026-01-19 01:04:05 +00:00
.forgejo/workflows Refactor ecommerce API integration and add product cache validation (#1055) 2026-02-06 20:30:16 +00:00
.github Switch to Ubicloud (#1266) 2026-04-09 16:50:29 +00:00
.zed Add jscpd for copy/paste detection (#51) 2025-11-28 13:53:06 +00:00
bin Profile script and identify performance bottlenecks (#762) 2026-01-20 20:54:05 +00:00
packages/js-toolkit Update biome schema to 2.4.10 to match CLI version (#1251) 2026-04-08 17:25:18 +00:00
screenshots Improve reviews layout design (#742) 2026-01-18 16:46:37 +00:00
scripts Set meta_title max to 60 and meta_description max to 160 (#1365) 2026-04-27 12:48:07 +00:00
src Replace header_intro and heading_level with intro_content (#1368) 2026-04-29 09:33:20 +00:00
test Replace header_intro and heading_level with intro_content (#1368) 2026-04-29 09:33:20 +00:00
.claude.json Add PostToolUse lint hook for Write/Edit operations (#559) 2026-01-09 18:51:27 +00:00
.eleventy.js Update example social posts with hashtag-styled captions (#1317) 2026-04-17 17:20:48 +00:00
.envrc Use system nixpkgs 2025-12-11 00:20:24 +00:00
.gitignore masonry maths (#1240) 2026-04-07 01:09:48 +00:00
.jscpd.json Add click-sparkle WebGL effect to about page (#1361) 2026-04-25 02:50:35 +00:00
.pages.yml Replace header_intro and heading_level with intro_content (#1368) 2026-04-29 09:33:20 +00:00
biome.json Include click-sparkle.js in linters and code-quality scanners (#1362) 2026-04-25 10:51:47 +00:00
BLOCKS_LAYOUT.md Replace header_intro and heading_level with intro_content (#1368) 2026-04-29 09:33:20 +00:00
bun.lock Lower peak build RSS by closing happy-dom Windows and capping concurrency (#1331) 2026-04-20 08:27:29 +00:00
bunfig.toml Disable coverage-by-default so ad-hoc test runs exit cleanly (#1283) 2026-04-14 09:45:05 +00:00
CLAUDE.md Add test efficiency guidance to CLAUDE.md (#1336) 2026-04-20 11:45:31 +00:00
flake.lock Fix quote multi-day pricing and hire-name mismatch across quote flow (#1351) 2026-04-23 03:45:41 +00:00
flake.nix Strengthen the types (#706) 2026-01-16 13:58:19 +00:00
knip.json Add click-sparkle WebGL effect to about page (#1361) 2026-04-25 02:50:35 +00:00
LICENSE Initial commit 2025-03-18 17:36:20 +00:00
package.json Lower peak build RSS by closing happy-dom Windows and capping concurrency (#1331) 2026-04-20 08:27:29 +00:00
README.md Update README.md (#1220) 2026-04-03 15:40:30 +00:00
tsconfig.json Add click-sparkle WebGL effect to about page (#1361) 2026-04-25 02:50:35 +00:00
tsconfig.strict.json Add strict typecheck ratchet and type generation freshness test (#1088) 2026-02-17 14:31:05 +00:00

The Chobble Template

⚠️ Don't forget to change the Formspark and Botpoison info in _data/config.json or in your repository's action secrets ⚠️

See this template in action at:

Want me to make you a website based on this template? Hit me up at chobble.com.

💖 Want to support the development of this template? 💖 Donate at liberapay.com/chobble

An Eleventy starter for business websites. The GitHub action deploys to both Neocities and Bunny.net - you'll need to edit that for your setup.

Content Types

  • Products - galleries, options with SKUs, FAQs, specifications, features lists, linked reviews with ratings
  • Categories - product groupings with inherited thumbnails
  • Events - one-off and recurring schedules, iCal feed generation
  • News - blog posts with Atom feed
  • Menus - categories, items, pricing, dietary indicators (vegan, gluten-free, etc.)
  • Locations - multi-site support with sub-locations
  • Properties - for holiday lets, linked to locations
  • Reviews - linked to products, aggregate ratings
  • Team - member profiles
  • Snippets - reusable content blocks

Shopping Cart & Payments

  • LocalStorage-based cart with quantity limits
  • Stripe/Square checkout via external ecommerce backend
  • Quote/enquiry mode (submit cart as request instead of payment)
  • Auto-generated SKUs via GitHub Action

Theming

  • 10 pre-built themes: Default, Neon, 90s Computer, Floral, Hacker, Monochrome, Ocean, Old Mac, Rainbow, Sunset
  • Per-page theme overrides
  • Visual theme editor at /theme-editor/ with export
  • CSS custom properties for colours, fonts, borders, layout
  • SCSS support
  • Bunny Fonts integration

Images

  • Responsive images with srcset via eleventy-img
  • Base64 LQIP placeholders
  • Gallery component with thumbnail navigation and full-size overlay
  • Custom aspect ratio cropping

Forms

SEO & Structured Data

  • Schema.org markup for products (with reviews/ratings), events, FAQs, organisation
  • Canonical URLs
  • Sitemap
  • Atom feed with XSL stylesheet
  • Meta descriptions, noindex support

Navigation & Layout

  • Horizontal or left sidebar navigation
  • Sticky mobile nav option
  • Two-column layout with sidebar
  • Slider component for horizontal scrolling
  • Scroll-fade animations (respects prefers-reduced-motion)

Development

  • Nix flakes with direnv support
  • bin/lint - format with Biome
  • bin/screenshot - automated screenshots
  • Biome linting
  • jscpd duplicate detection
  • Knip unused code detection
  • 17+ test files with custom runner
  • instant.page for link prefetching on hover

Deployment

  • GitHub Actions workflow for Neocities and Bunny.net
  • Forgejo Actions support
  • PagesCMS integration for no-code editing
  • External ecommerce backend for payment processing

Configuration

  • _data/config.json - Formspark, Botpoison, ecommerce checkout, map embed, nav options
  • _data/site.json - name, URL, description, social links (14 platforms), opening hours
  • _data/meta.json - language, organisation details for schema.org
  • _data/strings.json - customisable labels and permalink directories

Want a website based on this template? Clone this repo, or hit me up at Chobble.com.