Purpose
- This file orients an automated agent (and humans) to make safe, correct edits.
- The site is data-driven: update YAML in
data/and pages update automatically via custom plugins.
Tech stack
- Framework: Docusaurus 3 (React 18)
- Dev server:
npm install && npm start(http://localhost:4720) - Build:
npm run build→ output inbuild/
High-level map (go here for the task you want)
- Add or edit a publication:
data/publications/(seedata/publications/AGENTS.md) - Add or edit a member (researcher/engineer/visiting/external):
data/members/(seedata/members/AGENTS.md) - Add or edit a faculty member:
data/faculty/(seedata/faculty/AGENTS.md) - Add or edit a project definition:
data/projects/(seedata/projects/AGENTS.md) - Add a project details page (MDX content):
src/pages/research/projects/(seesrc/pages/research/projects/AGENTS.md)
How content flows
- Custom plugins under
plugins/load YAML and expose the data globally:- Publications →
plugins/publications/ - Projects →
plugins/projects/ - Members (and member-pages) →
plugins/members/
- Publications →
- List pages are MDX under
src/pages/and use React components that read plugin data. - Detail pages are auto-generated by plugins:
- Publications:
/publications/{slug} - Members (only
type: researcher):/members/{slug}
- Publications:
Quick rules that prevent surprises
- Keep
slugvalues unique in YAML. Routes are built from them. - Publication authors must be short-name strings (e.g.,
A. Kougkas). Member pages match on this form. - To associate a publication with a project, include the project
nameas a tag in the publication YAML (e.g.,ChronoLog,Hermes,WisIO). - Member photos live in
static/img/members/and are referenced by filename in YAML. - Prefer a consistent publication
dateformat (e.g.,June, 2025). Sorting usesnew Date(date).
Common entry points
- Publications list:
src/pages/publications.mdx - Projects list:
src/pages/research/projects/index.mdx - Members directory:
src/pages/members.mdx
Where to learn details
- See the folder-local
AGENTS.mdfor step-by-step, examples, and schema:data/publications/AGENTS.mddata/projects/AGENTS.mddata/members/AGENTS.mddata/faculty/AGENTS.mdsrc/pages/research/projects/AGENTS.md
Advanced (usually not required for content edits)
- Type definitions:
src/types.ts - Publication table and detail UI:
src/components/publications/ - Member list/item/detail UI:
src/components/people/ - Project list/cards:
src/components/projects/