Skip to content

Commit dbfde3c

Browse files
authored
Merge pull request #79 from s-ccs/martin_website
update readme & add member
2 parents 03dc272 + 173703a commit dbfde3c

File tree

3 files changed

+39
-23
lines changed

3 files changed

+39
-23
lines changed

README.md

Lines changed: 37 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -8,10 +8,10 @@ If you ever think you fixed a simple bug like changing a link or some text and p
88

99
## How to deploy the website locally
1010
1. Make sure you have [Julia](https://julialang.org/) installed. This Website is running on Julia 1.6.3, but later versions should work as well.
11-
1. Install Franklin for Julia, by going into the [package manager](https://docs.julialang.org/en/v1/stdlib/Pkg/) and typing `add Franklin; add CSV; add DataStructures`.
12-
1. Clone this git repository.
13-
1. In Julia, exit the package manager by pressing CTRL-C or pressing the backspace key at the beginning of the line, if you didn't already and [cd](https://docs.julialang.org/en/v1/base/file/#Base.Filesystem.cd-Tuple{AbstractString}) into your local repository.
14-
1. Then type the following:
11+
2. Install Franklin for Julia, by going into the [package manager](https://docs.julialang.org/en/v1/stdlib/Pkg/) and typing `add Franklin; add CSV; add DataStructures`.
12+
3. Clone this git repository.
13+
4. In Julia, exit the package manager by pressing CTRL-C or pressing the backspace key at the beginning of the line, if you didn't already and [cd](https://docs.julialang.org/en/v1/base/file/#Base.Filesystem.cd-Tuple{AbstractString}) into your local repository.
14+
5. Then type the following:
1515
```
1616
using Franklin
1717
using CSV
@@ -21,71 +21,85 @@ If you ever think you fixed a simple bug like changing a link or some text and p
2121

2222
If you experience any trouble, have a look at the Franklin doc: [Quick Start](https://franklinjl.org/#quick_start)
2323

24+
## Previewing pull requests
25+
By following these steps, you can preview changes to the website with pull requests before merging them:
26+
1. Clone this git repository
27+
2. Create a branch: `git checkout -b branch-name`
28+
3. Make changes
29+
4. Stage and commit
30+
5. Push: `git push origin branch-name`
31+
6. Go to the lab website on Github, and click "Compare & pull request"
32+
- select "base: main <- compare: branch-name"
33+
- add a title and description of the changes
34+
- click "Create pull request"
35+
7. Preview the website with your changes by visiting the following URL, where you use the number of your pull request: https://s-ccs.github.io/previews/PR{number}/
36+
8. If everything works as intended, merge the pull request
37+
2438
### Troubleshooting
2539
1. If your local preview of the members page shows something along the lines of
26-
Argument Error: Package CSV not found in current path: Run `import Pkg; Pkg.add("CSV")` to install CSV package.
40+
Argument Error: Package CSV not found in current path: Run `import Pkg; Pkg.add("CSV")` to install the CSV package.
2741
Have a look [here](https://franklinjl.org/code/#projecttoml). This problem might be due to a wrong path in the project.toml or manifest.toml.
28-
The most reliable way to fix this so far, is deleteing both .toml files and re-adding the packages in julia by cd'ing into the project folder and adding, as well as activating the packages (see link above).
42+
The most reliable way to fix this so far, is deleteing both .toml files and re-adding the packages in julia by cd'ing into the project folder and adding, as well as activating the packages (see link above).
2943

3044
## File Structure
3145
Generally, the site follows the Franklin folder structure, documented [here](https://franklinjl.org/workflow/#folder_structure). If you just want to edit the content of the website, get familiar with Markdown and the basic functionality of [Franklin](https://franklinjl.org/)
3246
Folders are made into master pages, linking to the `*.md` pages found in that folder. This allows you to group content. If you don't want a folder to be part of the website you can blacklist it (as well as any other file). If you want to extend the site generation, all scripts can be found under `.\_assets\scritps\`
3347

3448
### Blacklists
3549
In the `.\_assets\scritps\` folder is file named `file_blacklist.jl`. It contains all needed blacklist for the site generation.\
36-
The **file blacklist** lists MD files that should not be reached by any navigation element. The names of the file have to be added in whole, casesensitive and with file extension.\
37-
In contrast the **folder blacklist** only needs keywords and/ or symbols that need to be contained in a folder or non-md file for not to be part of the website as all, i.g as a toc page to group content. \
50+
The **file blacklist** lists MD files that should not be reached by any navigation element. The names of the file have to be added in whole, case-sensitive and with file extension.\
51+
In contrast, the **folder blacklist** only needs keywords and/or symbols that need to be contained in a folder or non-md file to not be part of the website at all, e.g as a toc page to group content. \
3852
**Uppercase list** is a list of pages, that should be rendered in uppercase in the navigation menu.\
3953
**Format Blacklist** is a blacklist for names, that shouldn't be formatted at all. In that case the name of the folder is used as is.\
40-
`I.g. eeg.md becomes EEG and PoRiCS.md becomes PoRiCS`
54+
`E.g. eeg.md becomes EEG and PoRiCS.md becomes PoRiCS`
4155

4256
## Extending and editing the page
4357
### Generation scripts
44-
Under `.\_assets\scritps\` all scripts for page generation and similar scripts that should be run after deployement, but before the changes go live. If scripts are added there, they either should be called in `init_dynamics.jl` or manually added to the github action under `.\.github\workflows\Deploy.yml`.
58+
Under `.\_assets\scritps\` are all scripts for page generation and similar scripts that should be run after deployement, but before the changes go live. If scripts are added there, they either should be called in `init_dynamics.jl` or manually added to the github action under `.\.github\workflows\Deploy.yml`.
4559

4660
### Custom ordering the navigation
47-
The first level of all navigation elements can have a custom ordering, while any higher level is going to be sorted alphabeticially.
48-
The first level is sorted like this: Any page that is specified in the custom order (see below) is sorted and inserted into the navigation as the custom order demands. Any further page that is not contained in there, will be appended at the end of the navigation. In case of multiple such pages, those are sorted alphabeticially.
61+
The first level of all navigation elements can have a custom ordering, while any higher level is going to be sorted alphabetically.
62+
The first level is sorted like this: Any page that is specified in the custom order (see below) is sorted and inserted into the navigation as the custom order demands. Any further page that is not contained in there will be appended at the end of the navigation. In case of multiple such pages, those are sorted alphabeticially.
4963

5064
In the `generate_side_nav.jl` under `.\_assets\scripts\` is a `custom_order` array, that contains all custom ordered pages in their correct order. This array can be modified to meet the demands needed. (This array might be extracted in the future, if the script is not like documented here, look for an obvious script name in the script folder)
5165

5266
### Custom content for TOC pages
5367
In general the toc pages (such es Teaching Resources or Thesis Art) are just a hub to link to the content of this group. But of course there should be some content before the grid of links. In each folder that becomes a toc page, you can add a index_content.md file. This file will be ignored by any navigation elements and the contents will be prepended to the links of the toc page.
5468

55-
Furthermore TOC pages now have an image preview. The images for each tile have to be added by hand. Images should have resolution of 400px x 380px. Folder structure is like: `\assets\toc-previews\sub-folder-name\Page-Name.jpg`. The image size is important in that regard, thats it both controls the image size on screen as well as the aspectio ratio of the background circles.
69+
Furthermore TOC pages now have an image preview. The images for each tile have to be added by hand. Images should have a resolution of 400px x 380px. The folder structure is like this: `\assets\toc-previews\sub-folder-name\Page-Name.jpg`. The image size is important in that regard, that it both controls the image size on screen as well as the aspect ratio of the background circles.
5670

5771
### Background Circles
5872
Teammembers and TOC pages have cirles as a visual feature. These are completely made in CSS. Every box contains a 7x7 grid. With `grid-template-rows` and `grid-template-columns` are the areas defined, in which the individual circles are defined. They can overlap, but they can't start and end in the same box. The circles themself are bordered divs with rounded edges. This makes it fairly easy to make new variations of cirlce patterns. If you want to read up, have a look here: `https://css-tricks.com/snippets/css/complete-guide-grid/`
5973

6074
## Update Team Members
61-
The team member page is auto generated by the contents in [\_assets\team\ ](https://github.com/s-ccs/s-ccs.github.io/tree/main/_assets/team). You can add, delete or update both current members or almunis in their respective folders.
75+
The team member page is auto generated by the contents in [\_assets\team\ ](https://github.com/s-ccs/s-ccs.github.io/tree/main/_assets/team). You can add, delete or update both current members or alumnis in their respective folders.
6276
### Naming of the folders
63-
The folders consist of a number and the team member's name. I.e. `001_benedikt_ehinger `
77+
The folders consist of a number and the team member's name, e.g. `001_benedikt_ehinger `
6478
The number is for ordering purposes, the name just for readability reasons. The name used for the website is taken from the CSV file
6579
### Folder Contents
6680
The folder of each member needs the following things:
6781
1. A `.jpg` image, named profile_image.jpg with a size of 360px x 360px.
6882
2. A `.csv` file, containing all info displayed in the member card.
6983
#### CSV Structure
70-
The CSV should use `;` as its delimiter and `newline` as row seperator.
71-
The structer of the file should look like:
72-
|title|name|position|hobbys|contact|
84+
The CSV should use `;` as its delimiter and `newline` as row separator.
85+
The structure of the file should look like this:
86+
|title|name|position|interests|contact|
7387
|-----|----|--------|------|-------|
74-
|Jun.-Prof. Dr.|Benedikt Ehinger|SimTech-Tenure-Track-Professur CCS|Lorem ipsum|[email protected]|
88+
|Jun.-Prof.|Benedikt Ehinger|Computational Cognitive Science, Stuttgart Center for Simulation Science/VIS|EEG/Eye-tracking, Methods, Statistics, Visual Processing|[email protected]|
7589

7690
## Update Papers list
77-
For now, papers are sorted by year published. Therefore for every year, there will be a CSV file in `.\_assets\papers\`
91+
For now, papers are sorted by year published. Therefore, for every year there will be a CSV file in `.\_assets\papers\`.
7892
This CSV file is built like this:
7993

8094
|Title|Author|DOI|PDF|
8195
|-----|------|---|---|
82-
|name-of-publications|names-of-authors|identifier|link-to-pdf `i.g. "..\assets\papers\pdf\paper1.pdf"`|
96+
|name-of-publications|names-of-authors|identifier|link-to-pdf, e.g. `"..\assets\papers\pdf\paper1.pdf"`|
8397

84-
If you want to upload the paper directly on the homepage, you can put the pdf of the paper in `..\assets\papers\pdf\`
98+
If you want to upload the paper directly to the homepage, you can put the pdf of the paper in `..\assets\papers\pdf\`
8599
Read below on how to update the list.
86100

87101
## Update dynamic content (like Navigation elements and TOC pages)
88-
If you add any pages, they will be added to the navigation menu, whenever you push the changes to Github. Same goes for the generation of TOC pages for folderse and subfolders. If you wan't to update the nav bar etc. locally,
102+
If you add any pages, they will be added to the navigation menu, whenever you push the changes to Github. Same goes for the generation of TOC pages for folders and subfolders. If you want to update the nav bar etc. locally,
89103
just cd into the folder where you would normally start Franklin. There run
90104
```
91105
include("./_assets/scripts/init_dynamics.jl");
20.6 KB
Loading
Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
title;name;position;interests;contact
2+
M.Sc.;Martin Geiger;Doctoral Researcher;EEG/ET, Methods, Statistics, Motion;[email protected]

0 commit comments

Comments
 (0)