fractal-forest v2.0.0
Fractal Forest
Better Portable Graphics module for After Dark. Fractal Forest adds support for Fabrice Bellard's BPG Image format.
Setup
None required.
Installation
- Copy the contents of this repository into a directory called
themes/fractal-forestunder the root of your After Dark site. Add
fractal-forestas a theme component to your After Dark siteconfig.toml, e.g.theme = [ "fractal-forest", "after-dark" ]Add and specify settings for the module in your After Dark site config, e.g.
[params.modules.fractal_forest] enabled = true # Optional, set false to disable module decoders = [ "bpgdec8", # 8-bit only javascript decoder without animation "bpgdec", # > 8-bit javascript decoder without animation "bpgdec8a" # 8-bit javascript decoder with animation ] crossorigin = "anonymous" # Optional, sets CORS attributeBuild and deploy your After Dark site.
For additional information please see BPG Image format.
Development
For development, install Docker on your machine:
Then build the codecs with docker build.
To adjust the version of bpg used simply modify LIBBPG_VERSION in the Dockerfile for desired version and rebuild. If you're on a multicore system adjust CPU_CORES to decrease compilation time.
Docker build produces an intermediate container image with libbpg source and result of compilation. It also copyies the codecs into a busybox image.
To access the full libbpg source run:
$ docker run -it 30c982469f98Where 30c982469f98 is the image id of the intermediate step.
To access just the codecs run:
$ docker run -it 712e9ce47e86Where 712e9ce47e86 is the image id of the final build step.
To update the javascript decoders in static/js/bpg run:
$ docker run --rm --entrypoint tar 712e9ce47e86 cC /var/www/ . | tar xvC static/jsWhere 712e9ce47e86 is the image id of the final build step.
Reference the libbpg mirror for additional compilation settings, README and Makefile. See the Docker Documentation for help with Docker.
Contributing
Please squash commits and use Convention Commit messages. Run npm run commit after installing NPM dev dependencies for help creating conventional commit messages.
Rights
Copyright (C) 2018, 2019 by Josh Habdas jhabdas@protonmail.com
Permission to use, copy, modify, and/or distribute this software for any purpose with or without fee is hereby granted.
The text of the above license is included in the file COPYING in the source.