Skip to content

Commit fd240f4

Browse files
committed
Add sponsor badge
1 parent 2e09e1c commit fd240f4

1 file changed

Lines changed: 89 additions & 0 deletions

File tree

README.md

Lines changed: 89 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,89 @@
1+
[![Sponsor](https://img.shields.io/badge/Sponsor-%E2%9D%A4-pink?logo=github)](https://github.com/sponsors/hyperpolymath)
2+
3+
// SPDX-License-Identifier: MPL-2.0
4+
// SPDX-FileCopyrightText: 2025-2026 Jonathan D.A. Jewell <j.d.a.jewell@open.ac.uk>
5+
6+
= casket-ssg
7+
image:https://img.shields.io/badge/OpenSSF-Best_Practices-green?logo=opensourcesecurity[OpenSSF Best Practices,link="https://www.bestpractices.dev/en/projects/new?repo_url=https://github.com/hyperpolymath/casket-ssg"]
8+
image:https://img.shields.io/badge/License-PMPL--1.0-blue.svg[License: PMPL-1.0,link="https://github.com/hyperpolymath/palimpsest-license"]
9+
image:https://api.thegreenwebfoundation.org/greencheckimage/github.com[Green Web,link="https://www.thegreenwebfoundation.org/green-web-check/?url=github.com"]
10+
11+
12+
13+
14+
image:https://img.shields.io/badge/Philosophy-Palimpsest-indigo.svg[Palimpsest,link="https://github.com/hyperpolymath/palimpsest-license"]
15+
16+
17+
:toc: auto
18+
:toclevels: 2
19+
20+
image:https://img.shields.io/badge/RSR-compliant-gold[RSR Compliant,link=https://github.com/hyperpolymath/rhodium-standard-repositories]
21+
22+
**Pure functional static site generator in Haskell.**
23+
24+
== Who Is This For?
25+
26+
* **Haskell developers** who want to build sites with tools they know and love
27+
* **Functional programming enthusiasts** who appreciate compositional design
28+
* **Teams requiring reliability** where type safety prevents runtime surprises
29+
* **Anyone frustrated** by dynamic language site builders that fail at deploy time
30+
31+
== Why casket-ssg?
32+
33+
=== Type Safety That Matters
34+
35+
Your site structure is checked at compile time. Missing templates, broken links, malformed frontmatter - all caught before deployment, not discovered by users.
36+
37+
=== Composable Pipelines
38+
39+
Content transformations compose like functions should. Chain markdown processing, templating, and asset handling with confidence that types align.
40+
41+
=== Lazy Large-Site Builds
42+
43+
Haskell's lazy evaluation means casket-ssg only processes what's needed. Incremental builds are natural, not bolted on.
44+
45+
=== Pandoc Integration
46+
47+
Best-in-class document conversion with full Pandoc support. Markdown, reStructuredText, Org-mode - your content, your format.
48+
49+
== Quick Start
50+
51+
[source,bash]
52+
----
53+
# Install
54+
cabal update
55+
cabal install casket-ssg
56+
57+
# Create a site
58+
casket-ssg init my-site
59+
cd my-site
60+
61+
# Build
62+
casket-ssg build
63+
64+
# Preview locally
65+
casket-ssg serve
66+
----
67+
68+
== Features
69+
70+
* **Compile-time template validation** - broken templates don't build
71+
* **Strong frontmatter types** - YAML parsing with schema enforcement
72+
* **Asset pipeline** - CSS/JS processing with hash-based cache busting
73+
* **Incremental builds** - only rebuild what changed
74+
* **Live reload** - instant preview during development
75+
* **RSS/Atom feeds** - generated automatically from content
76+
* **Sitemap generation** - SEO-ready output
77+
78+
== Requirements
79+
80+
* GHC 9.0 or later
81+
* Cabal 3.0 or Stack 2.0
82+
83+
== Part of poly-ssg
84+
85+
casket-ssg is part of the https://github.com/hyperpolymath/poly-ssg[poly-ssg] family of language-native static site generators, unified through https://github.com/hyperpolymath/poly-ssg-mcp[MCP integration].
86+
87+
== License
88+
89+
MPL-2.0

0 commit comments

Comments
 (0)