Skip to content

Commit 4f70f3f

Browse files
committed
Add GitHub Pages showcase
1 parent bc81387 commit 4f70f3f

12 files changed

Lines changed: 1224 additions & 0 deletions

README.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,10 @@
1818
</a>
1919
</p>
2020

21+
<p align="center">
22+
<a href="https://demchaav.github.io/GraphCompose/"><b>View Live Showcase</b></a>
23+
</p>
24+
2125
## Why GraphCompose?
2226

2327
Most Java PDF libraries hand you low-level drawing commands. GraphCompose gives Java applications a **semantic authoring model** &mdash; you describe modules, paragraphs, tables, rows, layers, and themes; the engine measures, paginates, and renders.

docs/README.md

Lines changed: 51 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,51 @@
1+
# GraphCompose GitHub Pages Showcase
2+
3+
This folder contains the lightweight static showcase site for GraphCompose. It is intentionally plain HTML, CSS, JavaScript, and JSON so GitHub Pages can publish it directly from the main repository without a build step.
4+
5+
## Files
6+
7+
- `index.html` is the single-page showcase.
8+
- `styles.css` contains the visual system and responsive layout.
9+
- `examples.json` is the gallery data source.
10+
- `assets/logo/` contains the showcase logo asset.
11+
- `assets/screenshots/` contains PNG previews for generated PDFs.
12+
- `assets/pdf/` contains the generated PDF examples linked from the gallery.
13+
14+
## Add A New Showcase Item
15+
16+
1. Generate the PDF from the examples module.
17+
2. Copy the PDF into `docs/assets/pdf/`.
18+
3. Add a PNG screenshot into `docs/assets/screenshots/`.
19+
4. Add a new object to `docs/examples.json`.
20+
5. Commit and push.
21+
22+
Each `examples.json` object uses this shape:
23+
24+
```json
25+
{
26+
"title": "Cinematic Invoice",
27+
"description": "A short description of the generated document.",
28+
"tags": ["Template", "Tables", "Theme"],
29+
"image": "assets/screenshots/invoice-v2.png",
30+
"pdf": "assets/pdf/invoice-v2.pdf",
31+
"code": "https://github.com/DemchaAV/GraphCompose/blob/main/examples/src/main/java/com/demcha/examples/InvoiceCinematicFileExample.java"
32+
}
33+
```
34+
35+
## Local Preview
36+
37+
Open `docs/index.html` directly in a browser for a quick visual check. If your browser blocks `fetch("examples.json")` for local `file://` pages, run any tiny static server from the repository root and open the `/docs/` path. No build step is required.
38+
39+
## GitHub Pages
40+
41+
To publish this site with GitHub Pages:
42+
43+
1. Open repository Settings.
44+
2. Go to Pages.
45+
3. Set Source to "Deploy from a branch".
46+
4. Select the main branch and `/docs` folder.
47+
5. Save.
48+
49+
The site should become available at:
50+
51+
https://demchaav.github.io/GraphCompose/
111 KB
Loading
134 KB
Loading
132 KB
Loading
154 KB
Loading
101 KB
Loading
137 KB
Loading
117 KB
Loading

docs/examples.json

Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
[
2+
{
3+
"title": "Cinematic Invoice",
4+
"description": "A polished invoice template with semantic sections, theme-driven layout, advanced tables, and totals.",
5+
"tags": ["Template", "Tables", "Theme"],
6+
"image": "assets/screenshots/invoice-v2.png",
7+
"pdf": "assets/pdf/invoice-v2.pdf",
8+
"code": "https://github.com/DemchaAV/GraphCompose/blob/main/examples/src/main/java/com/demcha/examples/InvoiceCinematicFileExample.java"
9+
},
10+
{
11+
"title": "Business Proposal",
12+
"description": "A multi-section proposal layout using cinematic panels, typography, and reusable document structure.",
13+
"tags": ["Template", "Sections", "Layout"],
14+
"image": "assets/screenshots/proposal-v2.png",
15+
"pdf": "assets/pdf/proposal-v2.pdf",
16+
"code": "https://github.com/DemchaAV/GraphCompose/blob/main/examples/src/main/java/com/demcha/examples/ProposalCinematicFileExample.java"
17+
},
18+
{
19+
"title": "CV Template",
20+
"description": "A compact CV render from the canonical template surface, driven by structured profile data.",
21+
"tags": ["Template", "CV", "Semantic Data"],
22+
"image": "assets/screenshots/cv-template.png",
23+
"pdf": "assets/pdf/cv-template.pdf",
24+
"code": "https://github.com/DemchaAV/GraphCompose/blob/main/examples/src/main/java/com/demcha/examples/CvFileExample.java"
25+
},
26+
{
27+
"title": "Advanced Tables",
28+
"description": "Table rendering with row spans, repeating headers, zebra rows, totals, and structured layout behavior.",
29+
"tags": ["Tables", "Pagination", "PDF"],
30+
"image": "assets/screenshots/advanced-table.png",
31+
"pdf": "assets/pdf/advanced-table.pdf",
32+
"code": "https://github.com/DemchaAV/GraphCompose/blob/main/examples/src/main/java/com/demcha/examples/TableAdvancedExample.java"
33+
},
34+
{
35+
"title": "Layers and Transforms",
36+
"description": "Layered visual composition with rotate, scale, z-index ordering, and PDFBox-backed rendering.",
37+
"tags": ["Layers", "Transforms", "Visual Layer"],
38+
"image": "assets/screenshots/layers-theme.png",
39+
"pdf": "assets/pdf/layers-theme.pdf",
40+
"code": "https://github.com/DemchaAV/GraphCompose/blob/main/examples/src/main/java/com/demcha/examples/TransformsExample.java"
41+
},
42+
{
43+
"title": "Shape Containers",
44+
"description": "Visual containers with clipping behavior, rounded shapes, and layout-aware content composition.",
45+
"tags": ["Shapes", "Containers", "Visual Layer"],
46+
"image": "assets/screenshots/shape-container.png",
47+
"pdf": "assets/pdf/shape-container.pdf",
48+
"code": "https://github.com/DemchaAV/GraphCompose/blob/main/examples/src/main/java/com/demcha/examples/ShapeContainerExample.java"
49+
}
50+
]

0 commit comments

Comments
 (0)