Understand the KaraKeep system architecture
KaraKeep is built using a NextJS web application that utilizes SQLite for data storage. The system employs a worker-based architecture to process asynchronous tasks from a SQLite-based job queue. There are three primary worker job types:
- Crawling: Uses a headless Chrome browser within the worker container to fetch content from links.
- OpenAI: Integrates with OpenAI APIs to automatically infer tags for the fetched content.
- Indexing: Syncs content into Meilisearch to enable high-performance search and retrieval.