Daily Digest
Aggregates user activity from multiple external providers into a single digest.
by George Stephanis · github.com/georgestephanis/daily-digest
Install
No release zip yet. The repository archive installs, but the folder name will carry the branch suffix and updates will not flow:
wp plugin install https://github.com/georgestephanis/daily-digest/archive/refs/heads/trunk.zipReadme
Daily Digest
Daily Digest is a WordPress plugin that aggregates per-user activity from multiple external providers into one dashboard view.
Features
- Unified digest view rendered in wp-admin with React + DataViews.
- Provider-based architecture with built-in GitHub, ClickUp, and Slack adapters.
- Per-user Keyring-backed provider connections with enable/disable settings.
- Admin-only logging tools and log viewer page.
- REST API endpoints for digest loading, provider credential testing/saving, and log retrieval.
Requirements
- WordPress 6.0+
- PHP 7.4+
- Node.js (for JS builds)
- Composer (for PHP tooling)
Installation
- Place this folder at
wp-content/plugins/daily-digest. - Activate Daily Digest in wp-admin.
- Visit Daily Digest → Settings to enable providers and connect each provider through Keyring.
- Visit Daily Digest → Overview to view activity.
- Visit Daily Digest → Logs (admins only) for logging controls and log viewer.
Provider Setup References
GitHub
- Create OAuth App: https://docs.github.com/en/apps/oauth-apps/building-oauth-apps/creating-an-oauth-app
- OAuth Apps Overview: https://docs.github.com/en/apps/oauth-apps
- Authorize OAuth Apps: https://docs.github.com/en/apps/oauth-apps/building-oauth-apps/authorizing-oauth-apps
ClickUp
- Authentication: https://developer.clickup.com/docs/authentication
- OAuth Getting Started: https://developer.clickup.com/docs/Getting%20Started
- OAuth Token Endpoint: https://developer.clickup.com/reference/getaccesstoken
ClickUp uses OAuth in Keyring:
- Create a ClickUp OAuth app and copy client_id and secret.
- In Tools -> Keyring -> Daily Digest ClickUp -> Manage, set API Key = client_id and API Secret = secret.
- In the ClickUp app settings, add the Keyring callback URL shown in that Manage screen as Redirect URL.
- Connect ClickUp via Keyring and complete the OAuth authorization.
Slack
- Create/Manage App: https://api.slack.com/apps
- Installing with OAuth: https://docs.slack.dev/authentication/installing-with-oauth
search:readscope reference: https://docs.slack.dev/reference/scopes/search.readauth.testmethod reference: https://docs.slack.dev/reference/methods/auth.test
Connection Metadata
Daily Digest stores provider tokens and connection context in Keyring metadata.
Connection context such as Slack user/team or ClickUp team IDs is discovered from provider APIs during Keyring verification and displayed read-only in Daily Digest settings.
Slack Setup Steps (Recommended)
- Go to https://api.slack.com/apps and click Create New App.
- Choose your workspace.
- In OAuth & Permissions, add the User Token Scope
search:read. - In OAuth & Permissions, add this Redirect URL from Keyring Slack manage screen:
Tools → Keyring → Daily Digest Slack → Manage
- In Keyring → Daily Digest Slack → Manage, paste:
- Client ID into API Key
- Client Secret into API Secret
- Save credentials in Keyring.
- In WordPress, open Daily Digest → Settings and click Connect via Keyring for Slack.
- Complete Slack authorization and run Test Connection.
Common Slack Auth Issues
- Missing
search:readuser scope on the Slack app. - Redirect URL mismatch (
bad_redirect_uri) between Slack app settings and Keyring callback URL. - Existing connection was authorized before scope updates; reconnect to apply new scopes.
Development
Install dependencies
composer install
npm install
Build assets
npm run build
Watch assets
npm run start
Lint
npm run lint
Auto-fix lint issues
npm run lint:fix
Individual lint commands
composer lint
composer lint:fix
npm run lint:js
npm run lint:js:fix
Extending
Register additional providers using the plugin action:
do_action( 'daily_digest_register_providers', $provider_registry );
$provider_registry is an instance of DailyDigest\ProviderRegistry.
CI
- PHPCS workflow:
.github/workflows/phpcs.yml - Release notes template:
.github/release-template.md - Release categories:
.github/release.yml
Read the full README on GitHub →
Releases
| Tag | Published |
|---|---|
| v0.1 | Mar 11, 2026 |
These releases are tags only. The author does not attach a packaged zip, so there are no download counts to report.