Skip to content

Commit 98c7abd

Browse files
committed
Finally added a readme
1 parent cbe8cbe commit 98c7abd

File tree

1 file changed

+137
-0
lines changed

1 file changed

+137
-0
lines changed

README.md

Lines changed: 137 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,137 @@
1+
# 👨‍🔬🧑‍🔬👩‍🔬 Scientific Website Template
2+
3+
Welcome to the repository of my website. The idea is to provide a quick and easy to use solution that requires little html or css skills by providing a usefull template that only needs to be filled with content. It follows the style currently popular for project pages in computer vision. It is based on the [minimal mistakes](https://github.com/mmistakes/minimal-mistakes) theme for [jeykll](https://jekyllrb.com) and extends it to a template for scientific project pages and an overview of publications.
4+
5+
## 📇 Using the template
6+
7+
If you want to use and modify the template, you are more than welcome to do so. The following tries to guide you through the process of setting up your own webpage with this template using `github.io`. This process is far from perfect and reflects my very limited understanding of this process. I am happy for any suggestions for improvement. It also acts as an overview of the different parts of this repository.
8+
9+
### 💾 Copying the repository
10+
11+
You can either clone or fork this repository from the github webpage. The repository should already include all the content and style files you need or install them if necessary.
12+
13+
### 🏃‍♂️ Running it locally
14+
15+
As this template uses [jeykll](https://jekyllrb.com) it is easy to deploy locally and test the website, before pushing any changes. To setup jekyll locally, follow the [instructions](https://jekyllrb.com/docs/installation/) for your operating system. If you have setup **ruby** and **jekyll**, you can navigate to this directory and run `jekyll serve`. You can work on this repository in the meantime. Refreshing the website will update the content.
16+
17+
### 📡 On github
18+
19+
If you have cloned the repository instead of forking it, you need to change the location to the remote repository on your github profile. After setting up the remote repository, you have to create a workflow to deploy the website. You can either create a manual workflow (which didn't work for me), or use the **pages** option under **settings**.
20+
21+
## 🔍 Understanding the template
22+
23+
### 👀 Overview
24+
25+
The template is currently divided into
26+
27+
- a front page: where you can introduce yourself and share any exiting news that you have
28+
- the meta data: stores all the information about the authors and affiliations
29+
- a publication overview: a listing of all the exiting projects you took part in
30+
- the individual project pages: provide more details about your projects on these pages
31+
32+
Of course it is possible to add more pages such as a CV. For this, you must get familiar with jekyll itself. But it is not too difficult.
33+
34+
### 🧑 The front page
35+
36+
The landing page of your website. Share any information you want to share, give a short introduction and present any exiting news. You should also replace the image in `assets/images/profile-photo.jpg` with a picture of you. The information presented on the page is found in `_config.yaml`, `_layouts/welcome.hmtl`, and `_data/news.yml`.
37+
38+
`_config.yaml` includes the information presented on the left side of the front page. This includes your
39+
40+
- name
41+
- file name for your photo
42+
- short bio
43+
- links to social media containing a `label`, `icon`, and `url`
44+
45+
Apart from that `_config.yaml` includes informations about the theme used. ❗ Only touch this if you know what you are doing.
46+
47+
`_layouts/welcome.hmtl` fills the right column with content and imports the news from `_data/news.yml`. It is a *jekyll* so, either change it carefully or familirize yourself with the *jekyll* proceedure.
48+
49+
`_data/news.yml` contains the news entries you want to share ordered by date. It is a simple `.yml` file with a list. Each list entry contains
50+
51+
- date
52+
- description
53+
54+
So nothing fancy.
55+
56+
### Ⓜ️ The meta data
57+
58+
Are you tired of always searching for peoples website or the names of affiliations. Is if **TU Munich**, **Technical University Munich**, or **Technical University of Munich**? In the files `_data/affiliations.yaml`, `_data/authors_external.yaml`, and `_data/authors_internal.yaml` you store the information about you and your co-authors and their affiliations so you avoid mistakes in the future.
59+
60+
For authors, the scheme is
61+
```
62+
{shortname}:
63+
  first_name: ...
64+
  last_name: ...
65+
  website: (optional)
66+
  is_me: true # to mark yourself
67+
```
68+
For affiliations it is:
69+
```
70+
{shortname}:
71+
  long: ...
72+
  short: ...
73+
```
74+
75+
### 🖼️ The publication overview
76+
77+
This collects all your publications to a central place. It lists all the publications from the newest to the oldest. The layout is defined in `_pages/publication_overview.html`. However, the idea is, that you do not need to add anything manually. The layout automatically gets all the relevant information from the individual publications in `_publications/*` and formats them automatically with title, authors, venue. It even allows for a thumbnail with mouseover that even supports video sequences.
78+
79+
### 📖 The individual publications
80+
81+
This is where you should spend most of your time. Every publication is a subdirectory of `_publications` containing at least an `index.md` file. However, if you want to also have a proper publication page, you should also add a `content.hmtl` file and an assets folder. The layout of the header for the publications is defined in `_layouts/publications.html`.
82+
83+
`index.md` contains all the meta information about publications that is used in `_layouts/publications.html` to generate the header and provide the information for the publication overview. We show an example file to introduce the different options
84+
85+
```
86+
layout: publications # defines the layout used for this publication. Leave it as publications or create your own layout under _layouts
87+
permalink: /publications/pnec/ # defines the link used to publish the website
88+
date: 2022_05_26 # determines sorting just take the date of the first publication as YYYY_MM_DD
89+
image: assets/teaser.pdf # defines the asset used in the thumbnail for the publication overview. Doesn't have to be a local file, can also use a file from another repository, e.g. if the actual project page is somewhere external
90+
image_mouseover: assets/trajectory_8.pdf # defines the mouseover asset. Also supports .mp4 otherwise same as above
91+
92+
title: "Probabilistic Normal Epipolar Constraint for Frame-To-Frame Rotation Optimization under Uncertain Feature Positions" # Should be self-explanatory
93+
venue: CVPR, 2022 # Should be self-explanatory
94+
authors: # A list of authors with their affiliations (based on the affiliations list at the bottom). As affiliations are not constant, this is one of the easiest solutions. Add equal_contribution to denote equal contribution
95+
  - name: dominikmuhle
96+
    affiliations: "1"
97+
    equal_contribution: True
98+
  - name: lukaskoestler
99+
    affiliations: "1"
100+
    equal_contribution: True
101+
  - name: nikodemmel
102+
    affiliations: "1"
103+
  - name: florianbernard
104+
    affiliations: "1,2"
105+
  - name: danielcremers
106+
    affiliations: "1"
107+
108+
affiliations: # The list of the affiliations based on the numbers above. Also denote whether you want the short or long version.
109+
  - name: tum
110+
    length: short
111+
  - name: bonn
112+
    length: short
113+
114+
description: "We propose a probabilistic extension to the normal epipolar constraint (NEC) which we call the PNEC. It allows to account for keypoint position uncertainty in images to produce more accurate frame to frame pose estimates." # A short description for the project overview
115+
116+
links: # A list of links you want add to your publication e.g. paper, code, video, poster, etc. The project page is mandatory and can either be a local link or an external link. This is used only on the overview page. You can add symbols to your links with the style attribute. However, I have no idea where to look this up.
117+
  - name: Project Page
118+
    link: /publications/pnec/
119+
  - name: Paper
120+
    link: https://arxiv.org/abs/2204.02256
121+
    style: "bi bi-file-earmark-richtext"
122+
  - name: Code
123+
    link: https://github.com/tum-vision/pnec
124+
    style: "bi bi-github"
125+
  - name: Video
126+
    link: https://youtu.be/YraCHnR5dmg
127+
    style: "bi bi-youtube"
128+
citation: '@inproceedings{muhle2022pnec,
129+
author = {D Muhle and L Koestler and N Demmel and F Bernard and D Cremers},
130+
title = {The Probabilistic Normal Epipolar Constraint for Frame-To-Frame Rotation Optimization under Uncertain Feature Positions},
131+
booktitle = {IEEE Conference on Computer Vision and Pattern Recognition (CVPR)},
132+
year = {2022},
133+
}' # (Optional) A citation, that is automatically formatted with linebreaks and tabs. That took me a very long time. If provided, it will create a citation section a handy citation buttion that will copy this to the clipboard on the project page and the overview.
134+
acknowledgements: 'We thank our colleagues, especially Florian Hofherr, for proofreading and helpful discussions. This work was supported by the ERC Advanced Grant SIMULACRON and by the Munich Center for Machine Learning.' # (Optional) Will add a acknowledgements section on the project page.
135+
```
136+
137+
The rest of the project page you have to define in the `content.html` file, where the template cannot help you anymore execpt to provide you with examples. More, maybe later.

0 commit comments

Comments
 (0)