This website is developed using clean HTML, CSS, and vanilla JavaScript. It showcases the research activities, software tools, and team contributions of the ARAMIS Lab. The site is deployed via GitHub Pages from the docs/ folder.
docs/
├── index.html # Homepage
├── people.html # Team Members
├── publications.html # Publications
├── software.html # Software
├── research.html # Research Topics
├── jobs.html # Job Offers
├── assets/
│ ├── style.css # Single stylesheet with CSS variables
│ └── script.js # JavaScript renderers
├── data/ # Content data (edit these to update the site)
│ ├── people.yaml
│ ├── publications.yaml
│ ├── software.yaml
│ ├── research.yaml
│ ├── jobs.yaml
│ └── aramis_former_members.csv
├── images/ # Images (team photos, logos, etc.)
│ ├── icons/ # Icons (institution logos, software icons)
│ ├── people/ # Team member photos
│ └── team/ # Team photos (2025 retreat)
├── job_offers/ # Job offer PDFs (organized by year)
├── perso/ # Personal pages (Olivier Colliot)
├── apprimage/ # APPRIMAGE project page
├── CNAME # Custom domain
- No build step — Pure static files. Open
docs/index.htmlin a browser to preview locally. - Data-driven — Content lives in YAML/CSV files in
docs/data/. JavaScript loads data and renders HTML components. - GitHub Pages — Push to
mainbranch → automatic deployment.
These are the files that change most often. Team members edit them via Pull Requests.
Edit docs/data/people.yaml:
- name: "First Last"
role: "Title (Affiliation)"
category: "faculty" # faculty | postdocs | phd | interns | support staff
photo: "images/people/first_last.jpg"
email: "email@domain.org"
website: "https://personal-website.org"
scholar: "https://scholar.google.com/citations?user=..."
linkedin: "https://linkedin.com/in/..."
twitter: "https://twitter.com/..."Photo: Add square photo to docs/images/people/ (naming: first_last.jpg)
Steps:
- Add square photo to
docs/images/people/ - Open
docs/data/people.yamlon GitHub → pencil icon ✏️ - Add entry at appropriate position (categories grouped)
- Follow the PR workflow below
Edit docs/data/jobs.yaml:
- title: "PhD: Project Title"
year: 2026
month: 9
category: "phd" # phd | postdoc | engineer | intern
duration: "3 years"
start_date: "2026-10-01"
contact: "email@domain.org"
pdf: "job_offers/2026/filename.pdf"
active: true # false to hide
description: "" # optional, shown on job cardSteps:
- Add PDF to
docs/job_offers/YYYY/(create year folder if needed) - Open
docs/data/jobs.yamlon GitHub → pencil icon ✏️ - Add entry at top (sorted by date)
- Follow the PR workflow below
- Only entries with
active: trueappear on the Jobs page - Set
active: falseto archive old positions
All changes must go through a Pull Request — no direct commits to main.
- Go to the repository on GitHub
- Navigate to
docs/data/→ click the file to edit (e.g.,people.yaml) - Click the pencil icon ✏️ to edit
- Make your changes
- At the bottom, select "Create a new branch for this commit and start a pull request"
- Enter a short branch name (e.g.,
add-member-john-doe) - Click "Propose changes"
- On the next page, click "Create pull request"
- Add a title and description, then click "Create pull request"
- Request review from a maintainer (add as reviewer)
- Once approved & merged → GitHub Pages auto-deploys (~1 minute)
This ensures changes are reviewed and avoids accidental breaks.
These files change less frequently. Require familiarity with YAML structure.
Edit docs/data/publications.yaml:
- title: "Paper Title"
authors:
- "LastName1, FirstName1"
- "LastName2, FirstName2"
venue: "Full Journal/Conference Name"
year: 2026
volume: "10" # optional
pages: "1-15" # optional
doi: "10.1234/xxxxx"
pdf: "https://hal.science/hal-xxxxxx/document" # optional
axis: "representation-learning" # one of 6 axes belowValid axis values:
representation-learning— Representation Learning for Multimodal Medical Datadisease-progression— Modelling Disease Progression from Longitudinal Datamethodological-challenges— Addressing Methodological Challenges of Real-World Datacomputational-pathology— Computational Pathology and High-Content Microscopyreproducibility-validation— Reproducibility, Benchmarking and Validationclinical-translation— Translating Computational Innovation into Medical Research and Clinical Practice
Edit docs/data/software.yaml:
- name: "Software Name"
icon: "images/icons/software/icon.png"
description: |
Multi-line description of the software.
references:
- title: "Reference paper title"
venue: "Journal"
year: 2024
doi: "10.xxxx/xxxx"
pdf: "https://..."
github: "https://github.com/aramis-lab/..."
website: "https://software-website.org"
email: "contact@domain.org"Edit docs/data/research.yaml (supports Markdown in text fields):
context: |
Intro paragraph with **bold** and [links](url).
axes:
- title: "Axis Title"
pis: ["PI Name 1", "PI Name 2"]
content: |
Detailed description with *markdown* support.
collaborations:
international:
- name: "Institution"
pi: "PI Name"
focus: "Research focus"
url: "https://..."
national:
- name: "Institution"
pi: "PI Name"
focus: "Research focus"
url: "https://..."
local:
- name: "Institution"
pi: "PI Name"
focus: "Research focus"
url: "https://..."
funding:
- name: "Funding body, Funding programme, Project <a href=\"url\" target=\"_blank\" rel=\"noopener\">ACRONYM</a>"
url: "https://..."The alumni list is generated from docs/data/aramis_former_members.csv. Edit the CSV file with columns: Name,Status,Year left.
Colors and spacing are defined as CSS variables in docs/assets/style.css:
:root {
--color-primary: #281e78; /* Dark blue */
--color-secondary: #fa4616; /* Orange */
--color-accent: #fa4616; /* Orange for links */
--font-family: 'Raleway', system-ui, sans-serif;
--container-max: 1000px;
}Simply open docs/index.html in a browser — no server required.
- All changes in
docs/onmainbranch deploy automatically via GitHub Pages - Check deployment status in repo Settings → Pages
- Custom domain configured via
CNAMEfile
The docs/apprimage/ (APPRIMAGE project page) and docs/perso/ (Olivier Colliot personal page) are separate standalone pages hosted alongside the main site. They are not part of the main team website structure but are deployed alongside it.