docs: refine Pages publishing and homepage positioning

fix Pages publishing workflow to preserve worktree metadata and keep .nojekyll after site synchronization
add generated historical builds index and publish builds/index.html explicitly
improve homepage messaging to highlight extensibility of compiled dictionaries through additional transformation layers
This commit is contained in:
2026-04-18 14:15:41 +02:00
parent 31ed39c785
commit 1df6c0c87e
2 changed files with 37 additions and 7 deletions

View File

@@ -250,9 +250,6 @@ jobs:
cp "${RUN_DIR}/index.html" "${LATEST_DIR}/index.html" cp "${RUN_DIR}/index.html" "${LATEST_DIR}/index.html"
cat > "${SITE_DIR}/.nojekyll" <<EOF
EOF
cat > docs/reports.md <<EOF cat > docs/reports.md <<EOF
# CI Reports # CI Reports
@@ -283,12 +280,42 @@ jobs:
- [Browse historical build reports](https://leogalambos.github.io/Radixor/builds/) - [Browse historical build reports](https://leogalambos.github.io/Radixor/builds/)
EOF EOF
{
echo "# Historical Build Reports"
echo
echo "The following build report sets are currently published on GitHub Pages."
echo
echo "| Build | Published | Link |"
echo "|---:|---|---|"
find "${SITE_DIR}/builds" -mindepth 1 -maxdepth 1 -type d ! -name latest -printf '%P\n' \
| grep -E '^[0-9]+$' \
| while read -r build; do
ts="$(git -C "${SITE_DIR}" log --diff-filter=A --format='%ct' --reverse -- "builds/${build}/index.html" | head -n 1)"
if [ -n "${ts}" ]; then
published="$(date -u -d "@${ts}" '+%Y-%m-%d %H:%M')"
else
published="unknown"
ts="0"
fi
printf '%s\t%s\t%s\n' "${ts}" "${build}" "${published}"
done \
| sort -r -n -k1,1 \
| while IFS=$'\t' read -r _ts build published; do
echo "| ${build} | ${published} | [Open](../builds/${build}/) |"
done
} > docs/builds.md
- name: Build documentation site (MkDocs Material) - name: Build documentation site (MkDocs Material)
shell: bash shell: bash
run: | run: |
set -euo pipefail set -euo pipefail
mkdocs build --strict --site-dir .mkdocs-site mkdocs build --strict --site-dir .mkdocs-site
rsync -a --delete --exclude '.git' --exclude '.git/' --exclude 'builds/' .mkdocs-site/ .gh-pages/ rsync -a --delete --exclude '.git' --exclude '.git/' --exclude 'builds/' .mkdocs-site/ .gh-pages/
mkdir -p .gh-pages/builds
cp .mkdocs-site/builds/index.html .gh-pages/builds/index.html
cat > .gh-pages/.nojekyll <<EOF
EOF
rm -rf .mkdocs-site rm -rf .mkdocs-site
- name: Commit and push gh-pages - name: Commit and push gh-pages

View File

@@ -2,19 +2,22 @@
**Radixor** is a high-performance, multi-language stemmer for Java, designed for production-grade search and text-processing systems. **Radixor** is a high-performance, multi-language stemmer for Java, designed for production-grade search and text-processing systems.
It modernizes the proven Egothor patch-command trie approach and delivers: It modernizes the proven Egothor patch-command trie approach while introducing an important practical enhancement: compiled dictionaries are no longer treated as a final, closed artifact. Instead, they can be extended through additional transformation layers, allowing existing lexical assets to be refined and evolved without full recompilation from source dictionaries.
Radixor delivers:
- **Fast runtime stemming** with compact lookup structures - **Fast runtime stemming** with compact lookup structures
- **Multi-language adaptability** through dictionary-driven compilation - **Multi-language adaptability** through dictionary-driven compilation
- **Incremental extensibility of compiled dictionaries** through additional transformation layers
- **Deterministic behavior** suitable for reproducible processing pipelines - **Deterministic behavior** suitable for reproducible processing pipelines
- **Flexible integration paths**, including CLI-based and programmatic workflows - **Flexible integration paths**, including CLI-based and programmatic workflows
- **Operational transparency** via continuously published quality and benchmark reports - **Operational transparency** through continuously published quality and benchmark reports
Radixor is built for teams that need consistent stemming quality at scale without sacrificing maintainability or deployment efficiency. Radixor is intended for teams that require consistent stemming quality at scale without compromising maintainability, deployment efficiency, or the long-term evolvability of compiled lexical resources.
## Start here ## Start here
- Read [Quick Start](quick-start.md) for immediate implementation guidance. - Read [Quick Start](quick-start.md) for immediate implementation guidance.
- Use [Programmatic Usage](programmatic-usage.md) for application integration patterns. - Use [Programmatic Usage](programmatic-usage.md) for application integration patterns.
- Review [Benchmarking](benchmarking.md) for reproducible performance methodology. - Review [Benchmarking](benchmarking.md) for reproducible performance methodology.
- Open [CI Reports](reports.md) to inspect published build artifacts and quality metrics. - Open [CI Reports](reports.md) to inspect published build artifacts and quality metrics.