Skip to content
A MagicMirror module that displays your Paprika meal plan for the week.
JavaScript HTML CSS
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.


This is a module for MagicMirror. It displays your weekly menu from Paprika.

Screen Shot


  1. Move to MagicMirror's modules directory and clone the repo with
    git clone
  2. cd into MMM-PaprikaMenu and run npm install


At a minimum, you need a Paprika cloud sync account. Provide that email and password in the config.

Option Description
The email/user account for Paprika

Type: string
password REQUIRED
The password for your Paprika account

Type: string
weekStartsOnSunday The modules shows the current week's menu. If true, the first day of the week will be Sunday. If false, Monday.

Type: bool
Default: false
priorDayLimit How many previous days of this current week will be displayed. If 0, only today until the end of the week are shown.

Type: int
Default: 7
priorEntryLimit How many entries from previous days should be shown in total. priorDayLimit takes precedence. For example, with 3 entries per day, priorEntryLimit set to 5 and priorDayLimit set to 1, you will only see 3 prior entries.

Type: int
Default: 50
fadePriorEntries Should entries from previous days in the current week be faded.

Type: bool
Default: true
showPictures Show pictures corresponding to that days meal.

Type: bool
Default: true
roundPictureCorners Round the meal picture corners.

Type: bool
Default: false
dateFormat Display format for the date; uses moment.js format string.

Type: string
Default: "dddd"
breakfastDisplay Paprika has a meal type where 0 corresponds to "Breakfast". You can change the word that is displayed.

Type: string
Default: "Breakfast"
lunchDisplay Paprika has a meal type where 1 corresponds to "Lunch". You can change the word that is displayed.

Type: string
Default: "Lunch"
dinnerDisplay Paprika has a meal type where 2 corresponds to "Dinner". You can change the word that is displayed.

Type: string
Default: "Dinner"
snackDisplay Paprika has a meal type where 3 corresponds to "Snack". You can change the word that is displayed.

Type: string
Default: "Snack"
dateMealSeperator Above each menu item, the date and meal type are displayed. For example, by default you'll see "Tuesday - Dinner". This setting controls the characters separating dateFormat and the meal display.

Type: string
Default: " - "
mealSortOrder The default sort order is breakfast (0), lunch (1), dinner (2), and lunch (3). You can change this sort order. For example, if you want dinner first: [2, 0, 1, 3]. The numbers correspond to the *Display options above. Note: each number 0-3 must appear exactly once in the array.

Type: array of int
updateInterval How often, in minutes, to query Paprika.

Type: int
Default: 60 minutes
updateFadeSpeed How quickly to fade out and back in the module upon update.

Type: int
Default: 500

Here is an example of an entry in config.js. Take note of snackDisplay and mealSortOrder. Here, we use the snack entries as a reminder of things we need to do to prepare for future meals, e.g., thaw meat. snackDisplay changes what appears, and mealSortOrder moves the snack entries to the top of the list for that day.

    module: "MMM-PaprikaMenu",
    header: "Dinner Menu",
    position: "top_left",
    classes: "default everyone",
    config: {
        email: "",
        password: "Secret!",
        weekStartsOnSunday: true,
        roundPictureCorners: true,
        snackDisplay: "Meal preparation reminder",
        mealSortOrder: [3, 0, 1, 2]


This package depends on the following:

You can’t perform that action at this time.