A powerful iOS widget built with Scriptable that displays your university or high school class schedule directly from a public Google Sheet.
It dynamically adapts to the day of the week, highlights the current or upcoming class, and supports a weekly overview.
Designed to bring clarity to your dayβat a glance.
full view
modeThe Sheet should be published to the web as a CSV file.
Your CSV must contain the following headers:
| Day | Start | End | Title | Type | Section | Building | Location | |ββ|ββ-|ββ|ββ-|ββ|βββ|βββ-|βββ-|
Example row:
Day | Start | End | Title | Type | Section | Building | Location |
---|---|---|---|---|---|---|---|
1 | 10:00 | 11:30 | CPS109 | Lecture | 011 | VIC | 105 |
Where Day
is:
File
> Share
> Publish to web
Comma-separated values (.csv)
and the correct sheet/tabIt will look like this:
https://docs.google.com/spreadsheets/d/e/.../pub?output=csv
Paste it into your script by replacing the value of SHEET_URL
.
const SHEET_URL = "https://docs.google.com/spreadsheets/d/e/your-url-here/pub?output=csv";
Shows classes for today based on current system time.
Shows the entire weekβs schedule in grid format.
Set the parameter:
full view
To test future days or class times:
test mon 10:30
To view the schedule for a specific day:
get tue
Use any of the following:
Parameter | Purpose |
---|---|
full view |
Show weekly grid |
test tue 11:00 |
Simulate time + weekday |
get wed |
Show Wednesdayβs classes |
(empty) | Show todayβs schedule (default) |
Each day of the week has its own background theme, defined in the code as:
const gradientThemes = {
monday: ["#0f2027", "#203a43"],
tuesday: ["#2c3e50", "#4ca1af"],
...
};
Feel free to modify these for your aesthetic preference.
Small Widget
Medium Widget
large Widget
widget.presentLarge()
to preview widget output in-app.console.log()
to debug any parsing issues.Have questions or want help customizing it? DM me on Instagram or email me at rushiofficial1205@gmail.com.
Widgets shouldnβt be limited to timersβIβd love to build tools that help you passively learn, reflect, or stay organized. If you have a unique concept in mind, Iβd love to collaborate.
This project is licensed under the MIT License.
Feel free to fork, build upon, and remix with attribution.
##
Enjoy using this widget ~ RP