Skip to content

Commit efd7344

Browse files
committed
image structure
1 parent fb627aa commit efd7344

23 files changed

Lines changed: 512 additions & 30 deletions

File tree

.github/workflows/gh-pages.yml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,9 @@ jobs:
3131
- name: Install Python dependencies
3232
run: pip install -r requirements.txt
3333

34+
- name: Generate image slot references
35+
run: python scripts/generate_image_slots.py
36+
3437
- name: Generate site health report
3538
run: python scripts/site_health.py
3639

PROMPT_ACTION_LOG.md

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,3 +32,38 @@ Verification
3232
Open questions and follow-up
3333

3434
* Decide later whether to keep scripts/check_template.py as a local-only helper or retire it.
35+
36+
2026-04-23
37+
38+
Prompt
39+
40+
User asked: "Reorganize the Working Group OASIS homepage around the repository plus website workflow, clarify how the repo is organized, and add a simple image-slot system for homepage visuals."
41+
42+
Files and folders inspected
43+
44+
* docs/
45+
* docs/stylesheets/
46+
* mkdocs.yml
47+
* README.md
48+
* scripts/
49+
* .github/workflows/
50+
51+
Actions taken
52+
53+
* Rewrote the homepage to explain the repository side, website side, and GitHub bridge with a clearer start path.
54+
* Added homepage edit affordances and enabled MkDocs Material edit actions.
55+
* Clarified the repository structure in the root README and MkDocs comments.
56+
* Added semantic image slot folders, slot documentation, and a pre-build generator for stable image references.
57+
* Extended the site health report and GitHub Pages workflow to cover the new image-slot system.
58+
59+
Verification
60+
61+
* Ran `python3 scripts/generate_image_slots.py`.
62+
* Ran `python3 scripts/site_health.py`.
63+
* Ran `python3 scripts/check_template.py`.
64+
* Ran `.venv/bin/mkdocs build --strict --clean`.
65+
* Verified the built homepage in a local browser against `site/index.html`, including the visible edit affordance and GitHub edit-mode URL for `docs/index.md`.
66+
67+
Open questions and follow-up
68+
69+
* Consider whether future template iterations should add dedicated README files for scientific working folders once those folders become part of the base template.

README.md

Lines changed: 56 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,16 +2,70 @@
22

33
This repository is a template for ESIIL Working Groups.
44

5-
The website is built from the docs/ folder using MkDocs.
5+
This template is designed as one connected system:
6+
7+
- The repository is where the science happens.
8+
- The website is where the science is shared.
9+
- GitHub connects them through commits, version history, and publishing.
10+
11+
## How this repository is organized
12+
13+
The repository has two connected layers. Top-level files configure the project and its automation. The `docs/` folder contains the website content. `mkdocs.yml` tells MkDocs how to turn that content into the public site. Analysis folders hold the working scientific materials that generate the results shown on the website.
14+
15+
```text
16+
.
17+
├── README.md # Repository overview and setup notes
18+
├── mkdocs.yml # Website navigation, theme, plugins, and edit links
19+
├── docs/ # Markdown source for the public website
20+
├── scripts/ # Build helpers and site health checks
21+
├── templates/ # Reusable meeting-note templates
22+
├── containers/ # Optional runtime and environment setup
23+
└── other working folders # Add data, notebooks, scripts, workflows, outputs, or figures here as the group's science grows
24+
```
25+
26+
Use these rules of thumb when deciding where to put something:
27+
28+
- Top-level files and folders are for project configuration, automation, contribution guidance, licensing, environment setup, and repo-wide metadata.
29+
- `docs/` is for public website pages and assets. Markdown files here become website pages through MkDocs.
30+
- `mkdocs.yml` controls how the website is rendered, including navigation, theme settings, plugins, and GitHub edit links.
31+
- Scientific working materials belong in working folders such as data, notebooks, scripts, workflows, outputs, and figure directories.
32+
33+
## Common places to edit
34+
35+
- `docs/index.md` is the homepage for the public site.
36+
- `docs/work-plan.md` is where the group can track milestones, meetings, and active work.
37+
- `docs/resources.md` is where datasets, references, and code links can be collected.
38+
- `docs/community-care.md` is where collaboration expectations and group care guidance live.
39+
- `docs/assets/images/slots/` contains named image slots for the homepage and other shared visuals.
640

741
## Preview locally
842

9-
pip install mkdocs-material
43+
```bash
44+
pip install -r requirements.txt
45+
python scripts/generate_image_slots.py
46+
python scripts/site_health.py
1047
mkdocs serve
48+
```
1149

1250
## Build site
1351

52+
```bash
53+
python scripts/generate_image_slots.py
54+
python scripts/site_health.py
1455
mkdocs build --strict --clean
56+
```
57+
58+
## Swapping homepage images
59+
60+
The homepage uses semantic image slots so Working Group members do not need to edit Markdown links every time an image changes.
61+
62+
1. Open the relevant folder in `docs/assets/images/slots/`.
63+
2. Delete the old image file.
64+
3. Add one new `.png`, `.jpg`, `.jpeg`, `.webp`, or `.svg` file.
65+
4. Run `python scripts/generate_image_slots.py`.
66+
5. Commit the image change and the regenerated slot references.
67+
68+
If a slot folder contains multiple images, the generator prefers the first non-placeholder file alphabetically and the site health report will warn you to clean it up.
1569

1670
## Site Health
1771

docs/_generated/image_slots.md

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
<!-- This file is generated by scripts/generate_image_slots.py. -->
2+
3+
[slot-hero]: assets/images/slots/hero/placeholder.svg
4+
[slot-repository-side]: assets/images/slots/repository-side/placeholder.svg
5+
[slot-website-side]: assets/images/slots/website-side/placeholder.svg
6+
[slot-analysis]: assets/images/slots/analysis/placeholder.svg
7+
[slot-data]: assets/images/slots/data/placeholder.svg
8+
[slot-outputs]: assets/images/slots/outputs/placeholder.svg

docs/_site_health.md

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,6 @@ Site Health
44

55
⚠ Placeholder detected: generic placeholder link in docs/index.md
66

7-
⚠ Placeholder detected: homepage description placeholder in docs/index.md
8-
97
⚠ Placeholder detected: people table placeholder in docs/index.md
108

119
⚠ Placeholder detected: generic placeholder link in docs/resources.md

docs/assets/images/slots/README.md

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
# Image Slots
2+
3+
This folder contains semantic image slots for the website.
4+
5+
Each subfolder controls one purpose-driven image location, such as the homepage hero image or the repository-side illustration.
6+
7+
To swap an image:
8+
9+
1. Open the relevant slot folder.
10+
2. Delete the old image.
11+
3. Add one new `.png`, `.jpg`, `.jpeg`, `.webp`, or `.svg` file.
12+
4. Run `python scripts/generate_image_slots.py`.
13+
5. Commit the image and the regenerated slot references.
14+
15+
Use one image per slot folder. If multiple images are present, the site generator prefers the first non-placeholder file alphabetically and the site health report will warn you to clean the folder up.
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
# Analysis Image Slot
2+
3+
This folder is reserved for an analysis-related image used elsewhere on the site.
4+
5+
To change it, delete the current image and add one new `.png`, `.jpg`, `.jpeg`, `.webp`, or `.svg` file. The website will use the image in this folder automatically if a page references the `analysis` slot.
6+
7+
Use one image only. Figures showing models, workflows, notebooks, or code snapshots work well here.
Lines changed: 15 additions & 0 deletions
Loading
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
# Data Image Slot
2+
3+
This folder is reserved for a data-related image used elsewhere on the site.
4+
5+
To change it, delete the current image and add one new `.png`, `.jpg`, `.jpeg`, `.webp`, or `.svg` file. The website will use the image in this folder automatically if a page references the `data` slot.
6+
7+
Use one image only. Screenshots of data catalogs, field sites, sample records, or metadata views work well here.
Lines changed: 16 additions & 0 deletions
Loading

0 commit comments

Comments
 (0)