# Micro Blog Fetchers The Micro Blog Fetchers is an app I made to aggregate, backup, and make my various social media posts available for my [personal site](https://travisshears.com). The app is comprised of a clojure app and a data layer that is my self-hosted [PocketBase](https://pocketbase.io/) instance. ## Progress since switching to Clojure - [x] BlueSky - [ ] Pixelfed - [x] Mastodon - [x] Nostr ## Dev Run the app locally: ```shell $ clj -M -m micro-blog.main ``` or just run parts via repl: ```shell $ clj ``` ## Deployment Repl: ```shell $ clj ``` Build and run uber jar manually: ```shell $ clj -T:build uber $ java -jar ./target/micro-blog-standalone.jar ``` Build new docker image and push it to ECR ```shell $ export AWS_PROFILE=personal $ docker buildx build --platform linux/amd64,linux/arm64 -t 853019563312.dkr.ecr.eu-central-1.amazonaws.com/micro-blog-fetchers-homelabstack:latest --push . ``` ## Project history - June 2024: Initial commit - July 2023: App is up and running logic is written in Typescript and deployed as AWS Lambda functions. My pocketbase instance is running on fly.io - May 2025: With my homelab [Nomad](https://developer.hashicorp.com/nomad) cluster running I'm switching most of my personal apps to on-prem. Pocketbase instance is already running on-prem. For this app I swap Serverless for docker container. App now deployed on-prem and the docker containers run once per hour thanks to Nomad's job scheduling. - July 2025: Start rewrite in Clojure with a long running docker container deployment instead of scheduled runs.