How to be prepared for tomorrow, seriously.

Andrew Sheron
Apple Shortcuts
Published in
5 min readOct 4, 2020

This guide shows you how my shortcut Nightly Rest works. The download/share link can be found at the bottom!

Picture this:

It’s been a long day. Home after dark like usual, the dishes are still in the sink, clothes need to be washed, and the cat still needs to be fed.

If you’re like anyone on this big blue planet, this is probably a very familiar scene. And if you’re also similar to majority of people, tomorrow is your last thought in this scenario. You may even go to bed or fall asleep without setting your alarm, or thinking about the first event on your schedule.

This was the case for me many times over again. I would find myself waking up well refreshed but also realizing I was late to school. Or I would find myself with just enough time to wake up, get dressed and hop in the car. Those days I liked to call “Breath Mint Days,” for their own very specific reason.

The truth is, it can be hard to prepare for the next day when the day we’re currently on is hectic enough.

Being productive is more than just knowing what’s on your plate for today, it’s knowing what comes next and how your current setting interacts with the next. Questions like,

  1. What’s on my schedule tomorrow?
  2. What time are these events, what time should I wake up?
  3. How do I prepare for these next events?

are questions essential to making you a more productive person, and starting the day ahead of you perfectly clear.

This being said, after missing a few classes and having more than enough breath mint days, I set out to solve the issue of tomorrow. Specifically, I set out to explore ways to prepare myself tomorrow regarding the productivity questions above.

The Solution: Apple Shortcuts

My favorite part of Apple’s Shortcuts is that it can read any native application’s objects; such as your calendar’s events or your reminders for the next day.

This means at any point, you can easily present yourself with events without launching an application. You can also pull from multiple sources from the same input, such as all events and reminders from the same day or time.

This was the basis for my solution.

Nightly Rest in action

Nightly Rest

I decided it would be fit to call my shortcut nightly rest. My idea for the shortcut was for it to be ran at any point of the day, but more specifically right before I went to bed. I wanted to know 3 things:

  1. What’s my first appointment or event tomorrow?
  2. What time is this event?
  3. What time should I go to bed?

I also wanted to make sure the shortcut could tell if I was having a late night. The shortcut starts by seeing whether the current date contains “AM” or “PM,” and parses the calendar accordingly. Like most calendar parse actions, I had to be sure to only search a few calendars. These were the events I should actually be waking up for, not US holidays, birthdays, or any other calendars.

I then had to filter these events down to one event, the event closest to my current time. I also wanted to make sure this event was in the morning, so I made sure it’s start date was before noon.

Once I had my event that was scheduled for either the next day, or today in a few hours, I had to figure what time I should go to bed for a full nights rest. I decided 9 hours was a good starting point for sleeping time, and a little extra time for waking up and getting ready. This variable can be changed for you of you download the shortcut.

Sleep Time: The variable that checks what time you should go to sleep. This variable can be changed to fit your needs.

If the the current time was greater than our sleep time variable, then I wanted to be notified of what time I should go to bed. Using the variables referenced in the shortcut, an example notification looks something like this:

The first event on your schedule tomorrow is work at 7:00 am. The latest you should go to bed is 9:00 pm.

In the case of a late night, then I wanted to know how many hours of sleep I’d get if i went to bed at that exact minute. The notification would then look like this:

The first thing on your schedule tomorrow is biology class at 8:00 am. If you go to bed now you should get around 8 hours of sleep.

If we had an event, but it was not before noon, then I also wanted to be notified:

You have no early events scheduled for tomorrow.

If we simply had no events,

You have no events scheduled for tomorrow.

We then push the notification if it has a simple value such as the last two cases, but if we had an early event, then we wanted the shortcut to make sure we knew. In this case, we preview the notification, which makes sure the user pushes “Done” before continuing the shortcut. This is useful for the next feature of the shortcut, adding an alarm for the event.

The prompt asking if an alarm should be added

Adding an Alarm

The shortcut then asks if you’d like to create a shortcut using a prompt. If no, the shortcut ends. If yes, the shortcut starts by subtracting 30 minutes from the event time, then subtracts 30 minutes from that value and so on.

This process is repeated 4 times so that we have 4 possible alarms to choose from. This list is then pushed to the user, and if one is chosen, creates an alarm for the event.

4 alarms to chose from

Here is the download for Nightly Rest

Thanks for reading :)

--

--

Andrew Sheron
Apple Shortcuts

Hello, I’m currently a University Student learning about Biology and studying Pre-PA. I spend my free time programming apple Shortcuts and iOS apps.