diff --git a/README.md b/README.md
index bd01a5f..5b0bacb 100644
--- a/README.md
+++ b/README.md
@@ -30,16 +30,19 @@ Data is automatically collected from:
### With Docker (recommended)
+The Jekyll site lives under `src/`, not the repo root, so use the provided
+script, which builds the image from the repo's `Dockerfile` (installing the
+gems pinned in `Gemfile`) and mounts only `src/` into the container:
+
```bash
-docker run --rm -v "$PWD:/srv/jekyll" -p 4000:4000 jekyll/jekyll:4.2.2 \
- sh -c "bundle install --quiet && jekyll serve"
+./serve.sh # Serve at http://localhost:4000/
```
### With Ruby
```bash
bundle install
-bundle exec jekyll serve
+bundle exec jekyll serve --source src
# View at http://localhost:4000
```
diff --git a/serve.sh b/serve.sh
old mode 100644
new mode 100755
index 52027a4..cece9b1
--- a/serve.sh
+++ b/serve.sh
@@ -26,13 +26,16 @@ if [ -n "$BASEURL" ]; then
echo "Serving with baseurl: $BASEURL"
fi
+echo "Building local image (installs gems from Gemfile)..."
+docker build -t reprodb-jekyll "$SITE_DIR"
+
echo "Starting Jekyll at http://localhost:${PORT}${BASEURL}/"
echo "Press Ctrl+C to stop."
docker run --rm \
- -v "$SITE_DIR:/srv/jekyll:Z" \
+ -v "$SITE_DIR/src:/srv/jekyll/src:Z" \
-p "${PORT}:${PORT}" \
-p 35729:35729 \
-e JEKYLL_ENV=development \
- jekyll/jekyll:4 \
- jekyll serve $JEKYLL_ARGS
+ reprodb-jekyll \
+ bundle exec jekyll serve $JEKYLL_ARGS
diff --git a/src/about.md b/src/about.md
index 38de525..ef0ff08 100644
--- a/src/about.md
+++ b/src/about.md
@@ -4,7 +4,7 @@ permalink: /about.html
skip_chartjs: true
---
-ReproDB and its underlying methodology are described in *ReproDB: An Open Platform for Discovering Research Artifacts and Analyzing their Evaluation in Security and Systems* by Vahldiek-Oberwagner, Bognar, and Signorello (ACM REP 2026).
+ReproDB and its underlying methodology are described in [*ReproDB: An Open Platform for Discovering Research Artifacts and Analyzing their Evaluation in Security and Systems*](https://vahldiek.github.io/files/acmrep26-reprodb.pdf) by Vahldiek-Oberwagner, Bognar, and Signorello (ACM REP 2026).
If you use ReproDB in your research, please cite:
diff --git a/src/methodology/artifinder.md b/src/methodology/artifinder.md
index a85bc34..8ee7b57 100644
--- a/src/methodology/artifinder.md
+++ b/src/methodology/artifinder.md
@@ -5,7 +5,7 @@ permalink: /methodology/artifinder.html
[ArtiFinder](https://github.com/DistriNet/ArtiFinder) scrapes conference papers directly and identifies links to their artifacts, independently of any artifact-evaluation (AE) process. This page summarises the ArtiFinder links that ReproDB ingests from the [ArtiFinder-Data](https://github.com/DistriNet/ArtiFinder-Data) repository and how they have grown over time.
-ArtiFinder and its underlying longitudinal study are described by Vansteenhuyse et al., *[Not All Those Who Share Are Lost: Analyzing 25 Years of Cybersecurity Artifact Sharing Practices Through Automated Discovery](https://github.com/DistriNet/ArtiFinder)* (USENIX Security 2026).
+ArtiFinder and its underlying longitudinal study are described by Vansteenhuyse et al., *[Not All Those Who Share Are Lost: Analyzing 25 Years of Cybersecurity Artifact Sharing Practices Through Automated Discovery](https://daanvs.be/files/usenix-share.pdf)* (USENIX Security 2026).
{: .artifinder-note}
**These links are _not_ manually verified.** ArtiFinder-discovered artifacts carry **no badges** and are **excluded from every ReproDB score** (artifact rate, reproducibility rate, combined score, institution and author rankings). They are shown for discovery purposes only, marked with an
**Artifinder** sign wherever they appear in search and profiles. The one exception is repository statistics: when ArtiFinder finds a GitHub repository for a paper that _did_ go through AE, that repository may be counted in the repository stats.
@@ -94,4 +94,4 @@ Discovered artifact links by conference and year. Darker cells indicate more dis
]
}
-
\ No newline at end of file
+