This is the repository for the BALab web site. This system is used to create and maintain the website. The system manages information regarding:
- group members and alumni,
- research projects,
- publications,
- software.
This is a responsive website (mobile, tablets and computers), using HTML, CSS & Boostrap 3.3.7. The technologies that are used are Pelican, Markdown & BiBTeX. Text is written in Markdown, while publication data is kept in BiBTeX format Data are transformed into static HTML pages by Pelican.
To contribute to the web site you need to follow these steps.
- Log into GitHub.
- Navigate to the BALab web site repository
- Click on the Forkbutton on the top right to create your personal copy
- Add or change the files you want.
- You can easily create a file with the Create new filebutton.
- You can edit a file you're viewing by pressing the Edit this file(pencil button) icon.
 
- You can easily create a file with the 
- Preview the change if it is Markdown text, to ensure it appears as you
want it.
(Ignore the formatting of the key: valueentries.)
- Add a meaningful message in the Commit changesplace.
- Select the Create a new branch for this commit and start a pull requestoption.
- Give a meaningful name to the branch you are creating.
- Press the Propose file changebutton.
- When you've finished all your related changes, press the Create pull requestbutton.
- Navigate to the BALab web site repository again.
- Click on the New pull requestbutton on the left.
- In the new page (Compare changes), press thecompare accross forkslink.
- From the head forkdrop-down menu, choose theHead Repository(yourusername/web) and, then, the branch where you made the changes in the forked repository.
- Press the Create pull requestbutton.
- All text is formatted using Markdown. See this guide for a quick introduction.
- Some pages have Key: Valuelines at the beginning. Keep these in a separate line each.
- To add a new seminar, add a file under content/seminars, using this template.
- To add a new member, add a file under content/members, using this template.
- To add a new publication edit the file in content/pubs.bib.- Use a templete associated with your publication's type from this file.
- You also can use a BibTeX entry exported from a digital library.
- In all cases, you need to add the  XEmemberandXEcategoryfields, and change the url field to XEurl field and the doi field to XEdoi.
- Look at existing entries for examples.
- Use only the following text in XEcategory:- 'Monographs and Edited Volumes'
- 'Journal Articles'
- 'Book Chapters'
- 'Conference Publications'
- 'Technical Reports'
- 'White Papers'
- 'Magazine Articles'
- 'Working Papers'
- 'PhD Theses'
 
 
- To add a new associate, add a file under content/members, using this template.
- To add a new project, add a file under content/projects, using this template.
- To add new software, add a file under content/software, using this template.
- To add a new email recipient add the name in the file content/mail-extra.
- To update a static page (ex. Member Achievements), go to pages, follow the existing structure and use class="img-responsive" for images.
- To modify an existing page, edit the corresponding file.
- To add a yearly report (e.g. Yearly Report 2020),
create a file under content/yearly_reports.
- To make members alumni, move them to the alumnidirectory and change theircategoryfrommemberstoalumni.
The site is implemented using Pelican.
- content: MD and bibtex user data- members: Members' information (MD)
- alumni: Alumni' information (MD)
- projects: Project information (MD)
- pubs.bib: publications - Bibliographic data (Bibtex)
- pages: Rogue HTML pages, which are assigned to the site.
- images: Put your image here
 
- plugins: bibtex plugin
- theme: templates and static files- templates:
- static:- css:
- images:
- fonts:
 
 
- output:
- doc/templates/member-associate-example.md: Template for a group member or associate
- doc/templates/project-example.md: Template for a research project
- doc/templates/publication-schema.bib: Bibtex entries templates
The required pelican package and its dependencies are automatically
installed in a virtual environment when the bin/update command is
first run.
- Locally: bin/update/
- To update the web site on the server: git pull && sudo -u www-data bin/updat/
- GitHub update on commit is done by a GET on the web-deploy endpoint