Fediverse Fanzine
Find a file
2025-09-23 15:34:30 +07:00
contestants add templating 2025-09-23 15:34:30 +07:00
bash-tpl add templating 2025-09-23 15:34:30 +07:00
fedizine_template_example.html add templating 2025-09-23 15:34:30 +07:00
index.html init 2025-08-28 15:57:34 -03:00
LICENSE Initial commit 2025-08-28 14:25:28 -07:00
README.md add templating 2025-09-23 15:34:30 +07:00
ref1.webp init 2025-08-28 15:57:34 -03:00
ref2.webp init 2025-08-28 15:57:34 -03:00
ref3.webp init 2025-08-28 15:57:34 -03:00
ref4.webp init 2025-08-28 15:57:34 -03:00

fedizine

Fediverse Fanzine

Using the template engine

For template engine (bash-tpl)[https://github.com/TekWizely/bash-tpl] is used. Bash-tpl template engine allows for bash injections into templates. I hope that most of options required are displayed in the example, since I have no idea what kind of design is coveted for fedizine.

Templating is split into 3 stages. 0. Template and files preparation

  1. Template script generation
  2. Template population

Template and files preparation

As an example a file (fedizine_template_example.html)[fedizine_template_example.html] is provided. For now there's nothing fancy, it is just a modified index.html page.

The template expects a folder named "contestants" in the same directory as itself. Contestants folder would hold a bunch of other directories, one per contestant. Names of those folders are not used in templating, but imagine you'd want something readable.

Every contestant folder should contain a bio.txt file. File's full name would be contestants\%some_folder%\bio.txt.

Such file should have following lines in following order:

  1. Contestant name
  2. Contestant bio written in a single line (no line breaks allowed); sorry it is scuffed for the first version
  3. A line describing an artwork
  4. A line describing an artwork
  5. A line describint an artwork
  6. ....

An amount of artworks isn't actually limited to just two. A line describing an artwork would be broken up by " delimiter. Which means it sould look somewhat like this: "ref1.webp" "Short description" "Alt text"

  1. First entry is file name. Note that the file not listed in bio.txt will not be displayed in the final html
  2. Second entry is short visible description. It will be written next to the file.
  3. Third entry is the image alt text.

Template script generation

Once template file is sufficiently prepared, you can create a generation script with this command:

./bash-tpl fedizie_template.html > fedizine_generate.sh && chmod +x fedizine_generate.sh

This script doesn't require bash-tpl or template file and can be transferred elsewhere at will.

Template population

Once folder structure and data are prepared and template script is generated, put template script in the same directory where contestants folder would be and execute command:

./fedizine_generate.sh > generated.html

This will create generated.html file which should be served to the end user.