Back to Projects

A platform for Palo Alto High School that collects data from the school calendar, publications, and athletics websites. With custom uptime reporting, error monitoring, and targeted messaging system, the platform is designed to be a one-stop shop for all things Paly.

Links


Blank

Summary

The OneShip project is a platform for Palo Alto High School that collects data from the school calendar, publications, and athletics websites. It can be accessed at palyoneship.web.app (no, I don’t have money for a domain), or via the mobile app (which is currently only available on Android as an APK — no, I can’t afford Apple developer licenses).

Key Features

  • Custom Error Reporting: OneShip has a custom uptime reporting system that will automatically report bugs (including a list of all elements that were interacted with) and notify all managers (at the moment, just me). I basically built Sentry for a hobby project, lol.
  • Targeted Messaging System: OneShip allows administrators to send messages to specific user groups. For example, the administrators can send a message to all students, all 9th and 12th grade students, or all teachers. OneShip also uses a heuristic to determine the relevancy of each message (based on its importance, specificity, sender, and recency) and order a user’s feed.
  • Platform Extent: OneShip is available on web, Android, and iPhone. The mobile apps send notifications before classes, with the arrival of new News articles, and for high-priority messages.
  • Cool Homepage: the homepage of the web version (https://palyoneship.web.app) is pretty cool! It represents an electric field

Technologies

OneShip is built with the following technologies:

  • Express.js
  • React
  • Firebase, Firestore, and Firebase Authentication
  • Vercel Serverless
  • React Native (and Expo)
  • Tailwind CSS
  • duct tape

Future Plans

Due to legal student data protection restrictions, the PAUSD isn’t interested in advertising or using OneShip… and I’m a senior that doesn’t really like his high school, so I’m not developing OneShip beyond its current, highly robust state. If you’re interested in picking up development of it, reach out to me!