Critical Moments Docs
Quick StartHomepageAccount
  • Documentation Home
  • What is Critical Moments?
  • Quick Start
  • Concepts Overview
  • Remote Control / Service
    • Host Config on Github Pages
  • Config File Structure
  • Demo App
  • Homepage & Account
  • 📚Guides
    • Mobile App Toolbox: 13 Features Most Apps Need
    • Reduce App Churn with Notifications
    • Improve your App Store Rating
    • Feature Flags Guide
  • ⏰Notifications
    • Intro to Notifications
    • Notifications Spec
    • Smart Delivery
    • Badges
  • 🎯Conditional Targeting
    • Intro to Conditions
    • Built-in Properties
    • Custom Properties
    • Syntax and Operators
    • Conditional Guides
      • Working with Dates
      • Locations and Weather
      • Event and Property History
  • 🎪Events
    • Event Overview
    • Recommended Events
    • Built-In Events
  • 💬Actions / In App Messaging
    • Actions Overview
    • Modals
      • Modal Content Sections
      • Modal Buttons
      • Modal Images
    • Banners
    • Alerts
    • App Reviews
    • Open Link
    • Custom Actions
    • Conditional Actions
    • Triggers
  • 🎨Themes
    • Theme Overview
    • Built In Themes
  • ⛳Feature Flags
    • Feature Flag Guide
    • Conditional Feature Flags
    • Named Conditions Config
  • 🔑Trustless SaaS
  • 👋Support
  • 👩‍💻SDK API Reference
Powered by GitBook
On this page

Was this helpful?

Concepts Overview

All the tools at your disposal

Last updated 10 months ago

Was this helpful?

This is a quick summary of all of the concepts in the Critical Moments SDK. Each is documented in detail later in this developer guide.

  • : delivery mobile notifications to your users, without a push server

  • : wait for the ideal moment to delivery a notification. For example, when the user is holding their device and at home.

  • are boolean string expressions that can be evaluated with the current state of the users device or event history. For example device_orientations == 'face_up' || has_wifi. They can be used for advanced targeting or optimizing.

  • Properties can be , or properties. They are the data points used in conditions, like has_wifi.

  • are logged when something happens, like a user action, or the app launching. They can be used to trigger actions, or you can query the event history in conditionals.

  • tracks all past events and past property states in a private database. These can be queried in conditionals.

  • can be fired when events occur or conditions are met. A wide array of options are built into the SDK including showing modal popups, banner announcements, alerts, requesting app reviews, launching webpages, app deeplinks, and more. You can add you own custom actions, tying into parts of your app.

  • bind events to actions, firing an action when an event occurs.

  • enable you to disable a feature without modifying your source code or requiring a redeploy. Critical Moments feature flags use the conditional system for advanced targeting

  • update the color and fonts of our action UI to match the look and feel of your brand.

  • binds all of the above concepts together. Even native UI actions can be defined in the config. By defining these in config instead of code we enable AB tests, iterative optimizations and powerful updates, launched with unprecended flexibility.

  • allows you to update your app's behaviour outside of the app store release cycle. This is useful for dealing with unexpected scenarios like showing an announcement in app, outages, disabling bugs, and more.

Notifications
Smart Notifications
Conditionals
built in
custom
Events
The events and properties database
Actions
Triggers
Feature Flags
Themes
The Config File
Remote Update