Skip to content

Categories & Subscriptions

Demo: Category Subscription & Digest Distribution

This recording shows subscribing to a category, then distributing a digest — watch the subscriber receive the formatted digest as a Slack DM on the right side.

Features Demonstrated

  • Category Subscription — Subscribe to a thematic list to receive digest notifications
  • Digest Distribution — Send a compiled digest to all subscribers via Slack DM
  • Delivery Tracking — Each delivery is tracked (pending/sent/failed) and synced to Notion
  • Notion Delivery Sync — Delivery records appear in Notion with status tracking

Demo: Create New List

This recording shows creating a new category from the App Home — watch the list appear in both the Slack dashboard and the Notion database.

Features Demonstrated

  • Category Creation — Create a new thematic list with name, description, and emoji icon
  • Emoji Icon Selection — Choose from 21 preset emoji icons to visually identify each category
  • App Home Refresh — The new category appears immediately in the dashboard
  • Notion Category Sync — The category is automatically created in the Notion database

Categories (called "Thematische Lijsten" in the Dutch UI) are the organising principle in YapHub. Every knowledge item belongs to a category, and users subscribe to categories to receive digest notifications.

Categories

Each category represents a thematic knowledge stream with its own configuration:

PropertyDescription
NameDisplay name (2–100 characters)
DescriptionOptional explanation of the category's purpose
IconEmoji icon displayed in the App Home
Target GroupsJSON array of audience labels (synced from Notion)
ActiveWhether the category is visible
Sort OrderDisplay order in the App Home

Category Settings

Each category has digest configuration that controls when and how digests are generated:

SettingOptionsDescription
Digest EnabledOn/OffWhether scheduled digests are active for this category
FrequencyWeekly, Biweekly, Monthly, QuarterlyHow often digests are generated
DayMonday–SundayWhich day of the week the digest runs
Time00:00–23:30What time the digest is generated

Creating a Category

Users create categories directly from the App Home:

  1. Click "Lijst toevoegen" (Add List) quick action button
  2. Fill in Naam (Name), Beschrijving (Description), and pick an Icoon (Emoji Icon) from 21 preset options organized by theme:
Category TypeAvailable Icons
General📁 Folder, 🗃️ Card Box, 🔖 Bookmark
Knowledge📚 Books, 📓 Notebook, 📜 Scroll
Ideas & Innovation💡 Lightbulb, 🚀 Rocket, ⭐ Star
Technical⚙️ Gear, 🔧 Wrench, 💻 Computer
Communication💬 Speech, 📧 Email, 🔔 Bell
Nature & Misc🌱 Seedling, 🌍 Earth, 🏆 Trophy
  1. Click "Aanmaken" (Create) — the backend creates the category entity and syncs to Notion
  2. The App Home refreshes immediately showing the new category with its emoji icon and description

Target Groups

Target groups are labels stored as a JSON array on each category. They originate from Notion's "Default Target Groups" multi-select property. While target groups are synced and displayed, they currently serve as metadata labels rather than operational filters.

Subscriptions

Users subscribe to categories to receive digest notifications via Slack DM.

Subscribe / Unsubscribe

Subscriptions are managed through the overflow menu on each category card in the App Home:

  • Subscribe — Click "Abonneer" from the overflow menu. A bell icon appears next to the category name confirming your subscription
  • Unsubscribe — The same menu shows "Uitschrijven" (Unsubscribe). Soft-delete: the subscription is deactivated (not removed), preserving history

Subscription Model

PropertyDescription
User IDSlack user ID of the subscriber
Slack User NameDisplay name at time of subscription
ActiveWhether the subscription is currently active
Subscribed AtWhen the user subscribed
Unsubscribed AtWhen the user unsubscribed (null if active)
Notion IDReference to the corresponding Notion record

A unique database constraint ensures each user can only have one subscription per category.

Subscriber Resolution for Digests

When a digest is distributed:

  1. The system queries all active subscribers for the digest's category
  2. The initiating user is added if not already in the list
  3. Duplicate user IDs are removed
  4. The formatted digest is sent to each recipient via Slack DM

Distribution Flow

The Subscriber Experience

Subscribers receive a rich, formatted Slack DM containing:

  • Header with category name, item count, date range, and total read time
  • Per-item sections with:
    • Knowledge title
    • AI-generated highlight summary (2-3 sentences in Dutch)
    • Tags
    • Estimated read time
    • Direct link to the Notion page
  • The message respects Slack's block limits (max 48 blocks per message, 2900 chars per text block)