Skip to content

Commit 814d8ae

Browse files
Copilotteggr
andauthored
Add JBake static site generator project entry (#74)
* Initial plan * Add JBake project with markdown, screenshot, and thumbnail Co-authored-by: teggr <837787+teggr@users.noreply.github.com> --------- Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: teggr <837787+teggr@users.noreply.github.com>
1 parent c0e994b commit 814d8ae

File tree

3 files changed

+44
-0
lines changed

3 files changed

+44
-0
lines changed

images/thumbnail-jbake.png

52.2 KB
Loading

images/ui-jbake.png

165 KB
Loading

jbake.md

Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
---
2+
name: JBake
3+
status: Production-ready
4+
javaVersion: 11+
5+
learningCurve: Easy-Moderate
6+
lastRelease: v2.7.0 (December 2025)
7+
learnMoreText: JBake Website
8+
learnMoreHref: https://jbake.org/
9+
image: images/ui-jbake.png
10+
tags:
11+
- Build Tools
12+
- Template Engine
13+
dateAdded: 2026-03-04
14+
---
15+
16+
JBake is an open-source, Java-based static site generator inspired by tools like Jekyll and Awestruct. It processes content written in AsciiDoc, Markdown, or plain HTML and applies templates to produce a complete static website. JBake supports multiple template engines—Freemarker, Groovy Markup, Groovy Templates, Thymeleaf, Jade, and Pebble—giving developers maximum flexibility in choosing a familiar syntax for layouts and partials. The tool is blog-aware, supporting RSS/Atom feeds, tag pages, archive pages, and draft content previews out of the box.
17+
18+
Build tool integration is a first-class feature: official plugins exist for Gradle, Maven, mill, and sbt, making JBake easy to incorporate into existing Java project workflows. Content is stored as plain files, compatible with any version control system. The binary distribution is self-contained, requiring only a JRE. JBake is ideal for developers, technical writers, and open-source projects that want a Java-native static site pipeline with strong template customization, without adopting Node.js-based tooling.
19+
20+
## Code Example
21+
22+
```java
23+
// Using the JBake API to bake a site programmatically
24+
import org.jbake.app.Oven;
25+
import org.jbake.app.configuration.ConfigUtil;
26+
import org.jbake.app.configuration.JBakeConfiguration;
27+
28+
import java.io.File;
29+
30+
public class BakeSite {
31+
public static void main(String[] args) throws Exception {
32+
File sourceDir = new File("src/site");
33+
File outputDir = new File("build/site");
34+
35+
JBakeConfiguration config = ConfigUtil.load(sourceDir);
36+
Oven oven = new Oven(config);
37+
38+
// Bake the site: process content and apply templates
39+
oven.bake();
40+
41+
System.out.println("Site generated in: " + outputDir.getAbsolutePath());
42+
}
43+
}
44+
```

0 commit comments

Comments
 (0)