Skip to content

Recurring Tasks

Recurring tasks repeat on a schedule you define. Daylight tracks each occurrence as a separate instance, so you can complete Tuesday’s “Weekly review” without affecting next Tuesday’s.

  • One definition, many instances. Create the task once; Daylight generates instances as needed.
  • Instance-level tracking. Complete, skip, or reschedule individual occurrences without breaking the series.
  • Plain-text rules. Uses iCalendar RRULE format—the same standard your calendar app uses.
  1. Create a new task or open an existing one
  2. Tap the Edit button (pencil icon)
  3. In the Recurrence section, choose a frequency (daily, weekly, monthly)
  4. For weekly tasks, select which days
  5. Save

Daylight adds a recurrence block to your task file:

---
title: Weekly review
status: active
created: 2026-01-28
recurrence:
rule: FREQ=WEEKLY;BYDAY=FR
instances:
- date: 2026-01-31
status: active
---

A recurring task has two parts:

  1. The series — The task file itself, containing the recurrence rule
  2. Instances — Individual occurrences tracked in recurrence.instances

When you view your task list, Daylight expands the series into separate rows for each upcoming instance. Each row represents a specific date.

StateWhat it means
activeNot yet done; shows in your task list
completedDone; moves to Wrapped for that day
skippedIntentionally skipped; won’t show again

What happens when you complete an instance

Section titled “What happens when you complete an instance”
  1. Daylight marks that instance as completed in recurrence.instances
  2. The instance moves to Wrapped (if completed today)
  3. The next instance automatically appears based on the rule

The task file stays active—only the specific instance is marked done.

recurrence:
rule: FREQ=DAILY
# Every Monday
recurrence:
rule: FREQ=WEEKLY;BYDAY=MO
# Every Monday, Wednesday, Friday
recurrence:
rule: FREQ=WEEKLY;BYDAY=MO,WE,FR
# Every 2 weeks on Friday
recurrence:
rule: FREQ=WEEKLY;INTERVAL=2;BYDAY=FR
# 15th of every month
recurrence:
rule: FREQ=MONTHLY;BYMONTHDAY=15
# First Monday of every month
recurrence:
rule: FREQ=MONTHLY;BYDAY=1MO
ActionWhat changes in the file
CompleteInstance status → completed
SkipInstance status → skipped
Reschedule instanceInstance date changes; new instance may be created
Reschedule seriesscheduled field changes; affects future instances
Delete seriesEntire task file deleted

[!note] Rescheduling a recurring task to a future date hides past uncompleted instances. This prevents a backlog of “catch-up” tasks from accumulating.

If you haven’t opened Daylight in a while, you might see multiple past instances in the “Past” group. Options:

  • Complete them if you actually did them
  • Skip them if they’re no longer relevant
  • Reschedule the series to today to reset

Daylight generates instances based on the rule when it needs to display them. If you see an unexpected instance:

  1. Check the recurrence.rule — does it match your intended schedule?
  2. Check recurrence.instances — is there already an instance for that date?
  3. Look at the scheduled field — instances only generate from this date forward

If you change a recurring task’s rule (e.g., from weekly to daily), existing instance history is preserved. New instances follow the new rule.

[!warning] Manually editing recurrence.instances can cause issues. If you need to clean up instance history, it’s safer to:

  1. Note the task details
  2. Delete the task
  3. Create a fresh recurring task

Daylight uses your device’s local date for all scheduling. If you travel across timezones:

  • Instances are based on the calendar date, not a specific time
  • A task scheduled for “Friday” means Friday in your current timezone
  • Synced devices in different timezones may show different “today” tasks
  • Is the recurrence.rule valid RRULE syntax?
  • Does the task have status: active?
  • Is there a scheduled date? (Instances generate from this date)
  • Check recurrence.instances for duplicate or conflicting entries
  • Try restarting the app if instances seem stale

Daylight uses standard iCalendar RRULE format. Key components:

ComponentExampleMeaning
FREQFREQ=WEEKLYFrequency: DAILY, WEEKLY, MONTHLY, YEARLY
INTERVALINTERVAL=2Every N periods (default: 1)
BYDAYBYDAY=MO,WE,FRWhich days of the week
BYMONTHDAYBYMONTHDAY=15Which day of the month
COUNTCOUNT=10Stop after N occurrences
UNTILUNTIL=20261231Stop after this date

For more complex rules, see the iCalendar RFC 5545 specification.