A crystal version of Camo, faster and with better request lifecycle tracing. This is a drop-in replacement which mirrors original camo's configuration and behaviour as closely as possible.
Camo.cr proxies images with the intent of allowing insecure images to be used on sites with TLS without mixed-content warnings.
The original nodejs camo code is fragile and hard to debug in production. As it's not a particularly long piece of code, I could write a replacement in a single day, with vastly better error handling and request tracing. Plus it's a fun challenge.
Inside a checked-out version of this repo:
$ shards install
$ shards build --release
The resulting binary will be in bin/camo
.
Alternatively, a docker container is available at rx14/camo.cr
. This container is also a drop-in replacement for the inventid/camo
docker container.
See atmos/camo's README.
After checking out the repo and running shards install
, run specs using crystal spec
.
- Fork it ( https://github.com/RX14/camo.cr/fork )
- Create your feature branch (
git checkout -b feature/foo
) - Commit your changes (
git gui
) - Push to the branch (
git push origin feature/foo
) - Create a new Pull Request
- RX14 RX14 - creator, maintainer