ads-zero is an alpha-stage alerting system built for modern marketers. It fetches campaign data from channels like Facebook, Google, TikTok, and Taboola, applies customizable rules, and sends notifications via email, Telegram, or Slack when conditions are met.
Note: Currently, only the Facebook integration is implemented, with ClickHouse used for data storage. Postgres support is planned along with additional data sources. The Kafka engine for scalable deployment is fully implemented.
| Component | Status | Details |
|---|---|---|
| Data Fetching | Facebook β
Google β³ TikTok β³ Taboola β³ |
Fetches marketing campaign data from multiple sources. |
| Rule Engine | Customizable β | Execute one or more rules against the fetched data to detect defined conditions. |
| Notification | Email, Telegram, Slack β | Send alerts to users when specific conditions are met. |
| Data Storage | ClickHouse β
Postgres β³ |
Save the fetched data for further analysis. |
| Deployment | Single Component β
Kafka β |
Use as a standalone component with an internal ticker or deploy at scale using Kafka. |
| Configuration | Database Configurable β | Configure alerts via database table records. Planned: JSON interface for simpler setups. |
- Alpha Stage: Minimal implementation for Facebook data integration.
- Storage: ClickHouse is the current working solution. Postgres support is planned.
- Deployment: Supports both single component mode (internal ticker) and scalable deployment using Kafka.
- Configuration: Alerts are currently configured through database table records. A JSON-based configuration interface is planned for users who do not need long-term data storage.
- Clone the Repository
git clone <repository_url> cd ads-zero-1
- Install any necessary dependencies.
- Configure your notification channels (email, Telegram, or Slack).
- Start testing and contributing to the development of additional data sources and rule implementations.
Contributions are welcome! Please feel free to fork the repository and submit pull requests with improvements or new features.
This project is licensed under the terms of the Apache License 2.0.
For any questions or collaboration ideas, please open an issue in the repository.