SKCG, jekyll-scholar-graphics
SKCG is used in the webpage to provide image, bibliography and some other liquid tags for faster formatting.
It is meant to help on writing computer graphics related posts.
SKCG is a custom gem that works with jekyll and provides useful liquid tags to create more academic posts. It is useful to create equations, images and references to them. Also provides bibliography funcitonalities.
Download the gem in:
https://github.com/carlesmatoses/jekyll-science-kit-computer-graphics
Alerts are just a wrapper div with background color. We use bootstrap styles in the background.
This is how we use liquid tags for alerts:
{% alert primary %} {% endalert %}
This is how we use liquid tags for alerts:
{% alert secondary %} {% endalert %}
A simple success alertβcheck it out!
{% alert success %} {% endalert %}
This is how we use liquid tags for alerts:
{% alert danger %} {% endalert %}
A simple warning alertβcheck it out!
{% alert warning %} {% endalert %}
This is how we use liquid tags for alerts:
{% alert info %} {% endalert %}
A simple light alertβcheck it out!
{% alert light %} {% endalert %}
A simple dark alertβcheck it out!
{% alert dark %} {% endalert %}
Multiple images in a single figure {% ref figure:1:2:3 %}
{% figure id="1:2:3" size="1.0"
caption="Three images but only a max of two images per row"
col="2" %}
/images/image-not-found.png
/images/image-not-found-long.png
/images/image-not-found-long.png
{% endfigure %}
multiple figures in the same line {% ref figure:img %} {% ref figure:img3 %} {% ref figure:img2 %}:
{% figure id="img" size="0.49" caption="square image" %}
/images/image-not-found.png
{% endfigure %}
{% figure id="img3" size="0.49" caption="long image" %}
/images/image-not-found-long.png
{% endfigure %}
{% figure id="img2" size="0.49" caption="long image" %}
/images/image-not-found-long.png
{% endfigure %}
As shown in equation 1, energy is proportional to mass. Also we can write in line equations as $E = mc^2$
{% equation id="energy" %}
E = mc^2
{% endequation %}
As shown in equation {% ref equation:energy %}, energy is proportional to mass. Also we can write in line equations as {% equation_inline E = mc^2 %}
I personally like to keep the code clean. For this reason I delegate the render properties to files like shaders and jsons that define Properties and render pipeline.
Additionally, all models will be stored in a unique path (even though you can add subpaths) because they can be heavy and I like to reuse them. The same idea with materials. Textures should be placed wherever you think is best for the shaders.
This is the structure I use:
assets/
βββ models/
β βββ model1.glb
β βββ model2.glb
β βββ materials/
β βββ material1/
β β βββ fragment.glsl
β β βββ uniforms.json
β β βββ vertex.glsl
β βββ material2/
β βββ fragment.glsl
β βββ uniforms.json
β βββ vertex.glsl
{% glb_viewer
id = 'viewer-1'
models = 'suzane, sphere'
materials = 'material1, enviorment'
%}
Bibliography management allows you to load references from a BibTeX file and cite them throughout your document. The gem supports both IEEE and APA citation styles.
First, load your bibliography file at the beginning of your document:
{% bibliography_loader _bibliography/references.bib %}
You can cite references anywhere in your text using the cite tag. For example, citing Ruby [1: The Ruby Programming Language; ; 2008]:
We can reference bibliography elements {% cite ruby %} with a liquid tag.
You can cite multiple sources in the same paragraph. Hereβs an example citing different programming languages [1: The Ruby Programming Language; ; 2008] and [2: Flow Cytometry: The Glass Is Half Full; ; 2018] frameworks:
Multiple citations can be used like {% cite ruby %} and {% cite my001 %}.
The bibliography tag supports different citation styles (IEEE by default, APA available):
<!-- Default IEEE style -->
{% bibliography %}
<!-- APA style -->
{% bibliography apa %}
The bibliography displays all cited references in the order they appear in your document: