Witral is a modular ingestion framework that connects messaging platforms to local and cloud storage. Designed for seamless data transformation, it captures messages directly into Markdown without interrupting your workflow. With built-in plugins like Baileys for WhatsApp, it offers a reliable solution for personal knowledge management, running privately on your infrastructure.
Witral is a self-hosted, modular ingestion framework that enables the efficient capture of ephemeral data from messaging platforms, transforming it into structured Markdown files for easy management. This innovative solution acts as a bridge between fast-paced communication streams, such as messaging services, and robust storage systems, whether local or cloud-based. By utilizing a "fire-and-forget" approach, Witral allows users to capture essential information without the need for context switching, streamlining workflows significantly.
,,tag).Witral features an interactive wizard that simplifies the initial setup process. The following steps outline how to begin utilizing Witral:
git clone https://github.com/kirlts/witral
cd witral
chmod +x scripts/start.sh
./scripts/start.sh
Witral actively listens for the ,, trigger within monitored groups for various capture functionalities:
Basic Capture (New File):
,,idea Rewrite the ingestor logicvault/tags/idea/27-10-2023 - 14-30.md.Dynamic Title Capture:
,,idea,,Architecture Rewrite the ingestor logicvault/tags/idea/Architecture.md.Append Mode: Allows messages to be appended to an existing file.
,,log Server restartedvault/tags/log.md.Witral provides an interactive menu directly within messaging platforms. By typing ,,menu in any monitored group, users can access various management options, including:
To interact with Witral once the Docker container is running, the built-in CLI tool is available:
docker exec -it witral node dist/index.js
This command gives access to tools for adding new groups, managing tags, and monitoring real-time logs.
The source structure of Witral is designed for clarity and organization, with distinct directories for core logic, plugins, scripts, and configuration data:
witral/
├── data/ # Persisted configuration (groups, tags, sessions) - gitignored
├── vault/ # Default output directory for Markdown files
├── scripts/ # Helper scripts (start, reset, backup)
├── src/ # Source files
│ ├── core/ # Core logic
│ ├── plugins/ # Modular plugins
│ └── cli/ # Interactive command-line interface
└── docker-compose.yml
For detailed technical information, architecture diagrams, and guidance on development, the full documentation is available.
No comments yet.
Sign in to be the first to comment.