SST Announcer was built to help SST Students stay up to date with the school’s announcements with ease and convenience on their devices. The app allows users to browse, pin and share important announcements made by the school. The app also sends notifications to students whenever a new announcement is posted. This helped to ensure that students are kept updated with the latest information from the school.
Original design by FourierIndustries (formerly StatiX Industries)
Revamped in 2018 by OrbitIndustries
Revamped, again, in 2020 by Jia Chen and Shannen
This project uses Cocoapods. Check the Podfile for more information.
- To install Cocoapods, in terminal, run
sudo gem install cocoapods
- To install the pods into the project, go to the project's directory and run
pod install
on this project - Open the
Announcer.xcworkspace
- Done
or just download on the App Store
- Xcode 11.4 or greater
- Swift 5
- iOS 13 or greater
- iPadOS 13 or greater
- MacOS 10.15 or greater
- Cocoapods 1.8.4 or greater
- URLEmbeddedView
- Previewing Links in the blog posts
- Installed using Cocoapods
- FeedKit
- Fetching data from Students' Blog (Atom feed)
- KALoader
- Loading animations while getting data from RSS feed
- UIKit
- User Interface for iOS, iPadOS and MacOS
- Mac Catalyst
- To enable MacOS support
- Background Tasks
- Fetching new blog posts in the background, on device.
- This is easier and more cost effective than running a server to push notifications to each device
- TL;DR: I'm broke so this is the best way
- Limitations:
- Unable to work with Low-Power Mode on
- User Notifications
- To send notifications to the users whenever a new post comes (works together with Background Tasks)
- Core Spotlight
- To allow users to search for announcements using spotlight search
Dark and Light mode
These colors are used for different parts of the app such as backgrounds and labels.
These colors are the ones as part of Apple's UIColor Human Interface Guidelines
Color Name | API | Light Theme | Dark Theme |
---|---|---|---|
Blue | .systemBlue |
- #007BFF | - #0A84FF |
Label | .label |
- #000000 | - #FFFFFF |
These colors are used for loading content using KALoader