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