Architecture
- Webapp: NextJS based using sqlite for data storage.
- Redis: Used with BullMQ for scheduling background jobs for the workers.
- Workers: Consume the jobs from redis and executes them, there are three job types:
- Crawling: Fetches the content of links using a headless chrome browser running in the workers container.
- OpenAI: Uses OpenAI APIs to infer the tags of the content.
- Indexing: Indexes the content in meilisearch for faster retrieval during search.