Using shortcuts app with scriptable

I am trying to make a school bell schedule home screen app so I click on the app and I get presented with a menu. I’m wondering if I need to make 4 scripts (1 for each bell schedule and then connect the scripts to each menu item) or if I can create a menu in scriptable and not make 4 scripts. I have provided what I have for now I am getting a lot of google gemini telling me scriptable cant send notifications based on time so I am wondering how I can work around that but I am unsure because what I want to build first is timed notifications so once I get that I can make another sort of menu where I copy and paste the assignments I need to do for each period and when lets say its 3rd period I can see at the start of my period the assignments I need to do which I have a basic understanding on how to do that

const scheduleData = {
  "regular": [
    { "start": "7:25", "end": "7:30 AM", "label": "Early Warning Bell" },
        { "start": "7:30 AM", "end": "8:17 AM", "label": "1st Period" },
        { "start": "8:21 AM", "end": "9:04 AM", "label": "2nd Period" },
        { "start": "9:08 AM", "end": "9:51 AM", "label": "3rd Period" },
        { "start": "9:55 AM", "end": "10:37 AM", "label": "4th Period" },
        { "start": "10:41 AM", "end": "11:23 AM", "label": "5th Period" },
        { "start": "11:27 AM", "end": "12:09 PM", "label": "6th Period" },
        { "start": "12:13 PM", "end": "12:56 PM", "label": "7th Period" },
        { "start": "1:00 PM", "end": "1:43 PM", "label": "8th Period" },
        { "start": "1:47 PM", "end": "2:30 PM", "label": "9th Period" }
      ], const selectedSchedule = await Script.getInput({
  type: Input.Type.Selection,
  title: "Choose Your Schedule",
  options: ["Regular", "45-minute Pep Rally", "2-hour Delay", "Spring 2024 EOC Testing"]

if (selectedSchedule) {
  const scheduleDetails = scheduleData[selectedSchedule.toLowerCase()];
  if (scheduleDetails) {
    await Script.showAlert({
      title: "Selected Schedule",
      message: `${selectedSchedule} schedule chosen`
  } else {
    await Script.showAlert({
      title: "Error",
      message: "Invalid schedule selection"

As far as I know, it’s only possible to trigger Scriptable scripts based on time using Shortcuts automations.

This looks like something that might work better in Calendar (which Scriptable can interact with) but your post is a bit lacking in detail. What are you trying to do?