|
1 | | -# Firefly for Java by Example |
| 1 | +# jafly by example |
2 | 2 |
|
3 | | -> *Reactive Microservices with Spring Boot, WebFlux & the Firefly Framework.* |
| 3 | +<picture> |
| 4 | + <source media="(prefers-color-scheme: dark)" srcset="art/brand/banner-dark.png"/> |
| 5 | + <img src="art/brand/banner-light.png" alt="jafly by Firefly"/> |
| 6 | +</picture> |
4 | 7 |
|
5 | | -The canonical, build-it-yourself guide to the **Java Firefly Framework** — a metaframework on top of Spring Boot (WebFlux · Project Reactor · R2DBC). You build one real application, a personal-loan origination service (**Lumen Lending**), from an empty folder to a secured, observable, event-driven, three-tier system — making every concept concrete before the next. |
| 8 | +> *From Spring Boot to a connected enterprise architecture.* |
| 9 | +
|
| 10 | +The canonical, build-it-yourself guide to **jafly**, the Java member of **Framework by Firefly** — a metaframework on top of Spring Boot (WebFlux · Project Reactor · R2DBC). You build one real application, a personal-loan origination service (**Lumen Lending**), from an empty folder to a secured, observable, event-driven, three-tier system — making every concept concrete before the next. |
6 | 11 |
|
7 | 12 | Published by the **Firefly Software Foundation** under Apache-2.0, in **American English** and **Spain Spanish (es-ES)**. |
8 | 13 |
|
@@ -38,13 +43,52 @@ mvn -f samples/lumen-lending/pom.xml verify |
38 | 43 | ./build/.venv/bin/python build/verify_code.py manuscript-es samples/lumen-lending |
39 | 44 | ``` |
40 | 45 |
|
| 46 | +## Cover and interior artwork |
| 47 | + |
| 48 | +The English and Spanish manifests select separate front and back covers from |
| 49 | +`art/`. PDF covers occupy the complete 7.5 × 9.25 inch trim page, without running |
| 50 | +headers or page numbers. EPUB editions include localized cover and back-cover |
| 51 | +documents at the beginning and end of the reading order, while retaining the |
| 52 | +chapter navigation. The interior uses the approved jafly logo on title and part |
| 53 | +pages, compact numbered chapter banners, and the shared paper, charcoal, amber |
| 54 | +and gold palette. Chapter titles come from the localized manifests when the |
| 55 | +manuscript does not supply a heading. Technical prose, diagram geometry, and |
| 56 | +verbatim listings are preserved. |
| 57 | + |
| 58 | +The shared **Framework by Firefly** brand kit owns the cover design. Validate the |
| 59 | +checked-in outlined SVGs and 1500 × 1850 PNGs before rebuilding: |
| 60 | + |
| 61 | +```bash |
| 62 | +./build/.venv/bin/python build/gen_cover.py |
| 63 | +# To import an updated canonical set: |
| 64 | +./build/.venv/bin/python build/gen_cover.py --source /path/to/Framework-Brand-Kit/11-Books/java |
| 65 | +``` |
| 66 | + |
| 67 | +On macOS, prefix these commands with |
| 68 | +`DYLD_FALLBACK_LIBRARY_PATH="$(brew --prefix)/lib"` if Cairo is not already on the |
| 69 | +loader path. The tool validates all four covers before copying them, and can |
| 70 | +rasterize missing PNGs from their outlined SVGs. It does not generate a new cover |
| 71 | +design. See [artwork provenance](art/BRAND-PROVENANCE.md) for ownership and print |
| 72 | +boundaries. |
| 73 | + |
41 | 74 | ## Releases |
42 | 75 |
|
43 | | -Built editions (EN + ES, EPUB + PDF) are attached to each [GitHub Release](../../releases) on a CalVer (`YY.MM.PATCH`) tag. The release workflow prepares a draft with all four files; publish the draft after reviewing the rendered editions. |
| 76 | +The redesigned English and Spanish editions are published together as |
| 77 | +[`books-2026.10.08`](https://github.com/fireflyframework/fireflyframework-java-book/releases/tag/books-2026.10.08): |
| 78 | + |
| 79 | +| Edition | PDF | EPUB | |
| 80 | +| --- | --- | --- | |
| 81 | +| English | [Download PDF](https://github.com/fireflyframework/fireflyframework-java-book/releases/download/books-2026.10.08/firefly-java-by-example.pdf) | [Download EPUB](https://github.com/fireflyframework/fireflyframework-java-book/releases/download/books-2026.10.08/firefly-java-by-example.epub) | |
| 82 | +| Español | [Descargar PDF](https://github.com/fireflyframework/fireflyframework-java-book/releases/download/books-2026.10.08/firefly-java-by-example-es.pdf) | [Descargar EPUB](https://github.com/fireflyframework/fireflyframework-java-book/releases/download/books-2026.10.08/firefly-java-by-example-es.epub) | |
| 83 | + |
| 84 | +Book-only editions use a `books-YYYY.MM.DD` tag. The existing CalVer |
| 85 | +(`vYY.MM.PATCH`) workflow remains available for subsequent technical editions. |
44 | 86 |
|
45 | 87 | ## Scope |
46 | 88 |
|
47 | | -This book is about the **Java** Firefly Framework only. The Python (PyFly), Rust, Go, and .NET ports, the Python agentic metaframework, the `agentic-bridge`, and the frontend frameworks are parallel projects and are **not** covered here. |
| 89 | +This book covers **jafly**, the Java family. The pyfly, larafly, rsfly and netfly |
| 90 | +frameworks, Firefly Agentic, the `agentic-bridge` and frontend projects have their |
| 91 | +own documentation and are outside this book's scope. |
48 | 92 |
|
49 | 93 | --- |
50 | 94 |
|
|
0 commit comments