+++
title = "Projects"
author = ["gabrielgio"]
layout = "single"
draft = false
+++
Just a list of some projects I have done and find useful on my day-to-day life.
- [Hub Watcher](https://gabrielgio.gitlab.io/hub-watcher/)
[](https://gitlab.com/gabrielgio/hub-watcher)
A small project to monitor changes in a docker image from [docker
hub](https://hub.docker.com/). By default every 5 minutes it will fetch the
digest of image and compare with the previous returned digest, if they are
different it will make a post request to a given url.
I created it so I can automatically trigger my gitlab pipeline to build my
custom nextcloud image everytime Nextcloud GmbH updates their image.
- [Reddit to Nextcloud
importer](https://gabrielgio.gitlab.io/reddit-nextcloud-importer/)
[](https://gitlab.com/gabrielgio/reddit-nextcloud-importer)
A small project that monitors user\'s saved posts on reddit, downloads its
media and uploads to a nextcloud instance.
It combines 3 projects: [praw](https://github.com/praw-dev/praw) to read and
motitor user's saved feed, [gallery-dl](https://github.com/mikf/gallery-dl)
to download media from several sources, and
[nextcloud-api-wrapper](https://github.com/luffah/nextcloud-API) to manage
folder and upload files to nexcloud instance.
- [Filter for Nerdcast
(pt-BR)](https://gabrielgio.gitlab.io/jn_filter/)
[](https://gitlab.com/gabrielgio/jn_filter)
Just a small podcast filter to remove and/or split a feed from
[Nerdcast](https://www.jovemnerd.com.br/nerdcast/) into different segments.
The current feed its quite clustered with many programs/segments and this
project just helps to clean up so only the segment you want shows up on you
podcast client.
- [Password generator](https://genpass.gabrielgio.me/)
[](https://gitlab.com/gabrielgio/genpass)
It started with me having fun with clojure script ([last
commit](https://gitlab.com/gabrielgio/genpass/-/tree/2db3d88503fbe219e99c464c4cc8e768613e1359)).
Now I have been using it as a playground to play a bit with rust/wasm and it
is a quite interesting comparacion to make. The cljs implementation could
not handle more than 1k chars, while the wasm can easly handle >100k. Is it
useful for a password generator? Probabally not, but if it is your use case
now I got you covered.