Small utilities and source files for generating my static website. ## Getting started ### Building the static website The generation is handled by the shell script `bin/ssg`. It uses functions from `bin/func` as abstraction layers to process source files. The generation of the *rss* file is handled in `bin/rssg`. Same as the above for the shell functions. Building the static website is as simple as typing: ``` make website # building small parts is possible ./bin/ssg ./bin/rssg ``` ### Previewing Run a local webserver, e.g.: `python3 -m http.server out/`. Preview the results on your favorite web browser. ### Uploading the output directory The content of the `out/` directory is uploaded to a remote directory, thanks to *rsync* over *ssh*. `make deploy` ## Media ### Storing medias Any media files, such as images or video can be stored in a separate `media` branch . Any files or directory at its root will be copied to the `out/` directory in the `trunk` branch when generating the static website. ### Compressing images Files in *jpg format* can be compressed with one of the following command: - `convert "${in}" -interlace Plane -sampling-factor 4:2:0 -quality 75% "${out}"` - `convert "${in}" -interlace Plane -gaussian-blur .05 -quality 85% "${out}"` Additionaly, the option `-strip` can be used for removing metadata. Moreover, the `-quality`, `-gaussian-blur` and `-sampling-factor` can be swapped between the example above. Once again, it is a manual process and difficult -time consumming ?- to automate it with good results. ### Dithering images It is preferred to use the `png` format with dithered images. Moreover, using a maximum width of 600 pixeles makes sense, since the dithered will lose informations anyway. Some of the following commands can be used, with different results or colored output. Moreover, changing the order of the parameters changes the final output! - `convert "${in}" -resize 600x -ordered-dither 3x3 -colorspace gray "${out}"` - `convert "${in}" -resize 600x -ordered-dither 3x3 -colors 16 "${out}"` The use of `-colors 16` is encouraged for colored pictures.