This website is powered by Academic Kickstart for Hugo. Check the docs for adding new modules or updating the template. Its source code is hosted on the IAM Lab GitHub organisation. The compiled website is hosted on Netlify with continuous integration, Simon will have the password to the lab's Netlify account in case you need to check the deployment logs if your changes broke the website.
Optimise every image to keep the website light and fast using https://bulkresizephotos.com. Choose your image, go to File Size
and set the size slider to 100kb or less. You can also use that website to resize your images.
You can use GitHub's GUI to correct any typos. Go to the file you want to modify, for example, Alan's profile and click on the pencil icon on the right. Once your changes are done, add a commit title (for example, "Add new affiliation for Alan") and optionally a description, then click Commit changes. The site will deploy itself, and you should see your changes online within ~30 sec.
First, set up your dev environment:
git clone https://github.com/IAM-lab/website_iam.git iam_website
cd iam_website
git submodule update --init --recursive
git pull
- Download Hugo Extended for your platform and copy the relevant binary to the root of your
iam_website
folder - Run
hugo serve
at the root ofiam_website
, if everything went well you should see the website in localhost:1313
Once you have done any changes outlined below, push them to the repo and they will be automatically deployed:
git add .
git commit -m "MEANINGFUL message please"
git push
- Go to
iam_website/content/authors
- Copy and paste
Julio-Vega
folder with the name of the new person replacing spaces with dashes (for exampleJane-Doe
). - Change:
name
authors
(this value has to match the folder name without dashes)- leave
superuser
as false role
organizations
bio
(1 or 2 sentences)interests
(keywords)education
social links
(you can use font awesome icons but choose the righticon pack
)- ignore
email
- set
user_groups
the group you want this person to belong to in People (available groups are inuser_groups
incontent/home/people.md
)
- Add a profile image named
avatar.png
oravatar.jpg
to this person's folder. - Your file structure should be something like:
content/authors/Jane-Doe/_index.md
content/authors/Jane-Doe/avatar.jpg
Just modify their _index.md
file.
Just delete their folder.
- In your
iam_website
folder executehugo new --kind project project/my-project-name
- Just as with people, edit the newly created file
content/project/my-project-name.md
. - If you want to link a project to people in the lab, add a field
authors
within the two+++
. For exampleauthors = ["Jonathan Carlton", "Andy Brown", "Caroline Jay"]
- You can link the project to an external website by setting the
external_link: "http://external-project.com"
variable (our internal page will be ignored) - You can add a project image named
featured.png
orfeatured.jpg
to the project's folder. - You can add a longer project description below the final
+++
.
Just modify its index.md
file.
Just delete its folder.
- In your
iam_website
folder executehugo new --kind post post/my-article-name
- You can add a news image named
featured.png
orfeatured.jpg
to the news' folder. - Feel free to add
tags
andcategories
to itsindex.md
file. The former will show up on the lab's world cloud, and the latter work as filters (try browsingcs.iam-lab/categories/your-category
) - Make sure you link your news to a project by setting
projects = ["project-folder"]
Just modify its index.md
file.
Just delete its folder.
There are two ways of adding publications, one for permanent and one for temporary staff.
For permanent staff add to bibliography/dblp-ids.txt
their dblp PID resource URI with a .bib
extension followed by a pipe |
followed by their name as it appears in their publications: https://dblp.org/pid/h/SimonHarper.bib|Simon Harper
. A python script, download_bib.py
, takes those URIs and downloads the respective bib files. It uses the name after |
to make sure all bib entries belong to this author (in case of errors on dblp). Why do we use dblp? Because it exposes curated bib files for free and without restrictions, having consistent bib keys allows us to ignore duplicates automatically.
For temporary people (e.g. PhD students) it is best to add individual bib files to the folder bibliography/bib
. Be careful with duplicates, the website won't detect if two papers are the same if they have different bib keys. This option is ideal for adding papers not indexed by dblp or not co-authored by permanent staff.
In any case, download_bib.py
reads the dblp and individual bib files and executes Academic Admin to import all bib entries automatically. download_bib.py
is executed on Netlify's servers after every push to the website's git repo. The bash command to do so is set in line 2 of netlify.toml
, Academic Admin is installed from requirements.txt
and the Python interpreter is set in runtime.txt
.
If you want to modify papers downloaded from dblp, you would need to modify the parsed bib entry between lines 30 and 31 of download_bib.py
before it is appended to db.entries
. If you want to modify papers of non-permanent staff just edit their individual bib files in bibliography/bib
.
If you want to get rid of specific papers downloaded from dblp, add their bibkeys to ignore_files_from_dblp
in line 13 of download_bib.py
. If you want to get rid of papers of non-permanent staff, just delete them from their individual bib files in bibliography/bib
.