Skip to content

Commit 073e90f

Browse files
committed
Document the shared template and new site features
1 parent 45907d0 commit 073e90f

1 file changed

Lines changed: 29 additions & 12 deletions

File tree

‎README.md‎

Lines changed: 29 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,15 @@ characteristic terms. Grey points are papers that fit no cluster.
3030
[`?q=diffusion`](https://flecomet.github.io/cvpr-explorer/?q=diffusion) is a shareable link.
3131
- **Click** a point to show the title, authors and abstract in the side panel, with a link to the PDF.
3232
- **Scroll and drag** to zoom and pan.
33+
- **Topic names** are drawn on the map, and more appear as you zoom in.
34+
- **Topics list**: click a topic to zoom to it and list its papers.
35+
- **Paper panel** also shows the TL;DR, keywords (click one to search), and the six most
36+
similar papers.
37+
- **Saved list**: keep papers in the browser and export them as CSV or Markdown.
38+
- **Shareable URLs** store the paper, search, topic and colour mode, such as `?p=<paper id>`.
39+
- **Light and dark themes**, keyboard shortcuts (`/` to search, `Esc` to clear), and a layout
40+
that works on a phone.
41+
- **Fast start**: the map loads first, and abstracts load afterwards.
3342

3443
<img src="docs/img/panel.png" alt="Side panel with the title, authors, PDF button and abstract of a selected paper" width="300">
3544

@@ -39,19 +48,19 @@ cluster is twice as far away as that one" as unreliable.
3948

4049
## Largest topics
4150

42-
The pipeline finds 32 topic clusters. A further 1477 papers (36%) belong to none of them.
51+
The pipeline finds 32 topic clusters. A further 1477 papers (36.3%) belong to none of them.
4352
Labels are generated automatically from the abstracts.
4453

4554
| Papers | Cluster label |
4655
|-------:|---------------|
47-
| 277 | 3d · point · view |
48-
| 197 | medical · clinical · image |
49-
| 176 | attacks · attack · adversarial |
50-
| 149 | gaussian · 3dgs · 3d |
51-
| 134 | generation · diffusion · training |
52-
| 122 | action · vla · robot |
53-
| 114 | reasoning · visual · multimodal |
54-
| 112 | 3d · generation · mesh |
56+
| 277 | lidar · point cloud · occupancy |
57+
| 197 | medical · clinical · brain |
58+
| 176 | attacks · adversarial · forgery |
59+
| 149 | splatting · 3dgs · 3d gaussian |
60+
| 134 | acceleration · var · video generation |
61+
| 122 | vla · robot · language action |
62+
| 114 | mllms · multimodal reasoning · answer |
63+
| 112 | mesh · 4d · 3d generation |
5564

5665
## How it works
5766

@@ -61,14 +70,14 @@ The pipeline is offline and the site is static.
6170
|------|--------|--------|
6271
| Scrape titles, authors, abstracts, PDF links | `scrape.py` | `data/cvpr_2026_papers.json` |
6372
| Embed abstracts with SPECTER2 | `embed.py` | `data/cvpr_2026_specter2.npy` |
64-
| UMAP to 2D, HDBSCAN clusters, c-TF-IDF labels | `layout.py` | `data/cvpr_2026_layout.json` |
65-
| Merge into the site payload | `build_site.py` | `site/data.json` |
73+
| UMAP to 2D, HDBSCAN clusters, c-TF-IDF labels, nearest neighbours | `layout.py` | `data/cvpr_2026_layout.json` |
74+
| Merge into the site payload | `build_site.py` | `site/data.json`, `site/details.json`, `site/index.html` |
6675

6776
`layout.py` runs UMAP on the cosine-normalised embeddings, then HDBSCAN, a density-based
6877
clustering method, on the 2D coordinates. Cluster labels use c-TF-IDF: terms score high when
6978
they are frequent in one cluster and rare in the others.
7079

71-
`site/index.html` renders the payload client-side with plotly.js. No backend and no API keys
80+
`site/index.html` is rendered from `templates/index.html`, and it draws the payload client-side with plotly.js. No backend and no API keys
7281
are needed at serve time.
7382

7483
## Run the pipeline
@@ -122,6 +131,14 @@ publishes `site/` to GitHub Pages.
122131
- [ ] Mark papers with released code
123132
- [ ] Add more conferences and years back
124133

134+
## Shared template
135+
136+
`build_site.py`, `embed.py`, `layout.py`, `templates/index.html`, the tests for them and
137+
the CI workflows are copied from
138+
[neurips-explorer](https://github.com/flecomet/neurips-explorer) by its
139+
`sync_template.py`. Edit them there and sync. `config.py`, `scrape.py` and this README
140+
belong to this repository.
141+
125142
## Credits
126143

127144
This is a fork of [dataplayer12/cvpr-explorer](https://github.com/dataplayer12/cvpr-explorer)

0 commit comments

Comments
 (0)