MishkaBlog.Application (Mishka Blog v0.0.1)

Copy Markdown View Source

The blog's OTP application. It supervises the task supervisor that highlights a post's code blocks and every mishka_installer plugin the extension ships (plugins/0): the dashboard widgets, the notification producers, the settings, sidebar, install, SEO, share card, stylesheet and page plugins. A plugin registers on the event it listens on once it is supervised here.

Summary

Functions

The blog's dashboard widget plugins. Each self-registers on the dashboard:widgets event, and MishkaBlog.Dashboard.WidgetSettings walks this same list to register each widget's own settings under the Blog tab — so the two can never disagree about which widgets exist.

Every mishka_installer plugin this extension ships, all of which start/2 supervises. A plugin left out of it never registers, so the event it listens on never reaches it.

Functions

dashboard_widgets()

@spec dashboard_widgets() :: [module()]

The blog's dashboard widget plugins. Each self-registers on the dashboard:widgets event, and MishkaBlog.Dashboard.WidgetSettings walks this same list to register each widget's own settings under the Blog tab — so the two can never disagree about which widgets exist.

plugins()

@spec plugins() :: [module()]

Every mishka_installer plugin this extension ships, all of which start/2 supervises. A plugin left out of it never registers, so the event it listens on never reaches it.