Lab or research group
Uses astro-static, run end to end
Good for: A PI or lab manager who wants a site the lab can keep current by adding a file.
What it makes your agent watch for
- Real alt text for every photo. The agent asks rather than writing "photo of person".
- Publications come from a list you supply, not from scraping a profile.
- Pulling publications automatically is a bolt-on, so it is raised before it is built.
Start a new website for my research lab, following Stanford Web Services standards.
This assumes the Stanford Web Services skills are installed in my editor. If
the sws-* skills are not available to you, run this first:
npx @su-sws/synthetic-web-team install --json
Then, in the empty directory for the new site:
npx @su-sws/synthetic-web-team init --json \
--answers '{"siteName":"...","unit":"...","purpose":"Lab website"}'
If npx cannot reach the registry, use the repository instead:
git clone --depth 1 https://github.com/SU-SWS/synthetic-web-team /tmp/swt
node /tmp/swt/packages/wizard/bin/wizard.mjs init --json \
--answers '{"siteName":"...","unit":"...","purpose":"Lab website"}'
Fill in siteName and unit from what I tell you, and ask me if they are not
obvious. Read AGENTS.md and follow it from now on. Work through "next" in
order. Ask me about every field in "incomplete": do not invent owner names or
email addresses, because MinWeb requires a real business owner and technical
administrator with Stanford addresses.
What I am building: a site for [lab name], a research group in [department],
led by [PI name].
Pages:
- Home: who we are and what we study, in two or three plain sentences
- Research: one page per research area, [list them]
- People: current members with role, photo, and a short bio; alumni listed
separately
- Publications: newest first, each with a link to the paper
- Join us, and contact
One file per person and one per publication, so adding someone means adding
a file. Ask me for real alt text for each photo; do not write "photo of" plus
a name. I will give you the publication list as [BibTeX / a plain list]; do
not scrape it from a profile page.
Link each person to their Stanford Profiles page if they have one. The
Profiles connector in .sws/standards/connectors/profiles/ is a stub, so keep the
people as files for now rather than pulling from it.
Keep the content in this repository as Markdown and YAML, so that a change
is a commit anyone can review. Do not pull it from a spreadsheet, a form, or a
hosted database. If something below seems to need one, stop and tell me what
.sws/standards/patterns/bolt-ons.md says before building it.
When the pages are built:
1. Run npm install and npm run build, then npx sws a11y, npx sws perf, and
npx sws check.
2. Give me the score out of 100 and the three findings most worth fixing,
one sentence each, naming the Stanford policy behind each.
3. Tell me what is still manual before launch: the accessibility review from
the Office of Digital Accessibility, Siteimprove registration, and approval
of the subdomain name by University Communications.
A passing run is a floor, not a conformance claim. Say so rather than calling
the site accessible.