Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
13 changes: 13 additions & 0 deletions .github/workflows/check.yml
Original file line number Diff line number Diff line change
Expand Up @@ -44,3 +44,16 @@ jobs:
path: |
build/reports/tests/test/
build/test-results/test/

# Lints CHANGELOG.md against the Keep a Changelog format
changelog:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v7
with:
show-progress: 'false'
- name: Lint CHANGELOG.md
uses: jbangdev/jbang-action@v0.140.1
with:
script: com.github.nbbrd.heylogs:heylogs-cli:0.19.1:bin
scriptargs: "check --rule dot-space-link-style:ERROR --format github-actions CHANGELOG.md"
22 changes: 22 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
# Changelog

All notable changes to this project will be documented in this file.

The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## [Unreleased]

## [0.1.0] - 2026-07-14

### Added

- HTML-to-node rendering (`HtmlToNode.render`): renders the HTML subset produced by [JabRef](https://github.com/JabRef/jabref)'s entry preview β€” user-defined layouts, CSL output from [citeproc-java](https://github.com/michel-kraemer/citeproc-java), Markdown from [flexmark-java](https://github.com/vsch/flexmark-java), and `<mark>` search highlights β€” as plain JavaFX `TextFlow`, `Text`, and `ImageView` nodes with no dependency on `javafx.web` or `javafx.controls`.
- `HtmlView` (a `VBox`) and the intermediate block/inline model (`HtmlToNode.parse`) for consumers that want to inspect or post-process the parsed structure before rendering.
- `HtmlRenderOptions` for configuring rendering, including a base URI for resolving relative image and link URLs (and `withoutBaseUri()` to opt out).
- Mouse text selection across rendered blocks in the plain-node renderer.
- RichTextArea-based renderer (`RichHtmlView`, `HtmlRichTextArea`, `RichTextRenderer`) with inline images, link hovering (hand cursor), and content-height sizing. It requires the `jfx.incubator.richtext` and `jfx.incubator.input` incubator modules, declared as `requires static`.
- The module is null-marked with [JSpecify](https://jspecify.dev/) annotations.

[Unreleased]: https://github.com/JabRef/html-to-node/compare/v0.1.0...HEAD
[0.1.0]: https://github.com/JabRef/html-to-node/releases/tag/v0.1.0