A blue-sky bot that publishes posts from some scrapped websites.
https://blog.nuculabs.dev
.idea | ||
bot | ||
docs | ||
infrastructure | ||
post | ||
scrapper | ||
synology | ||
.dockerignore | ||
.gitignore | ||
Cargo.toml | ||
docker-compose.yaml | ||
Makefile | ||
readme.md |
BlueSky Bot
A simple Bot that scrapes websites and publishes tweets on BlueSky.
It's built with Rust and Redis and can be extended to include LLM support for content summarization, suggestions and other features.
Demo:
Architecture
The architecture is composed of the following elements:
- The Scrapper
It scrapes data from one or more websites and publishes a JSON on Redis Streams.
It is configured via CLI arguments
Usage: scrapper [OPTIONS] --redis-connection-string <REDIS_CONNECTION_STRING> --redis-stream-name <REDIS_STREAM_NAME>
Options:
-r, --redis-connection-string <REDIS_CONNECTION_STRING>
Redis host
-t, --redis-stream-name <REDIS_STREAM_NAME>
Redis stream name
-s, --scrape-interval-minutes <SCRAPE_INTERVAL_MINUTES>
The scraping interval in minutes [default: 60]
-h, --help
Print help
-V, --version
Print version
- Redis
Redis is a key-value store with lots of features. It has been chosen to keep things simple and due to its powerful features and flexibility[1].
- BlueSky Bot
The BlueSky bot reads data from Redis Streams and publishes it to BlueSky.
[1] - https://redis.io/about/