Started in 2018 by the University of Illinois’ Smart, Healthy Communities Initiative, Rokwire is the open-source platform that powers both the Illinois app and the now-retired Safer Illinois app.
“Open-source” means all code is publicly available for people to copy and reuse as they see fit. Rokwire has 28 public code repositories on GitHub, which include the Illinois app and server-side systems for authenticating users, sending out notifications, conducting research and fetching data from University servers.
Principles in action
One of the main design principles of the Rokwire platform is adaptability. This means components should be designed so they can be used in multiple environments with minimal code changes.
Get The Daily Illini in your inbox!
This goal was put to the test during the COVID-19 pandemic, when Rokwire developers were tasked with building an app for both contact tracing and enforcing the University’s COVID-19 testing requirement. They quickly developed the Safer Illinois app, reusing code they had written for the Illinois app.
Developers also went further, creating versions of the app for six other universities, including the University of Nebraska, Vanderbilt University and the University of Wisconsin-Madison.
The effort was led by ROKMETRO, a privately owned company that specializes in adapting the Rokwire platform for other universities. The code’s permissive Apache License allows external parties such as ROKMETRO to reuse it for both commercial and noncommercial purposes.
“Those clones of Safer Illinois were developed within six to eight weeks’ time,” said Joe Grohens, communications director of the SHCI. “I don’t think that any of those other universities could have done it on their own.”
To Grohens, it was proof that the Rokwire platform was a good foundation for efficient development of apps.
Contributing to Rokwire
Students are able to contribute to Rokwire. The first step is to create a new issue on one of Rokwire’s repositories on GitHub and then wait for a maintainer to approve it. If the issue is a bug, a Rokwire developer will fix it.
If the issue describes a new feature, the author can either request a developer to implement it or volunteer to implement it themselves. If they choose the latter, they would make changes to the code in a separate branch and then create a pull request, which must be approved by a maintainer.
So far, most contributions have come from either University staff, ROKMETRO or Inabyte Inc., the latter being a software development services company the University hired to work on Rokwire.
Grohens explained independent contributions have been limited due to various factors.
“We haven’t really had a lot of documentation ready for open-source contributors … they get stuck,” Grohens said.
Without meticulous documentation, contributors must often figure out how a codebase works and how to test it through trial and error, but creating it takes valuable time away from other efforts.
However, Rokwire developers are working to change these issues. Last year, they created a community wiki to provide guidance to new contributors on how to get started.
“I think we’re at the beginning of being able to support (independent contributors),” Grohens said.
Coming soon to the Illinois app
William Sullivan, director of the SHCI, shared new capabilities that are slated to be added to the Illinois app in the coming months.
Illini ID unlock
Students will soon be able to unlock doors at residence halls and other campus buildings using their phone instead of an iCard. The feature, which utilizes special readers that receive signals from nearby phones that have the Illinois app, is currently in pilot testing. Facilities & Services is installing readers on campus buildings and expects to install 2,000 by the end of January 2024.
Data collection for research
The Rokwire platform already has a privacy-preserving framework for recruiting participants for research studies.
Illinois app users interested in participating in research must explicitly opt in and fill out a survey asking basic demographic questions. Researchers can submit demographic requirements for participant groups in a study, and invitations are sent to users who match the requirements.
Sullivan emphasized that researchers cannot see which users receive invitations, so no user data is sent to a researcher until the user agrees to participate in a specific study.
Currently, developers are extending the framework to allow researchers to collect data from sensors on participants’ devices. Sullivan explained that sensors on smartphones are useful for tracking activities, such as sleep. Sensor data will only be collected from users actively participating in studies that enable it.
Illinois assistant
A team led by Sanjay Patel, professor in Engineering, has trained an artificial intelligence language model to retrieve answers from Illinois websites for questions, such as, “When will I be eligible for study abroad?.”
The end goal is to deploy the model as a search feature accessible to all students through the Illinois app. Sullivan said the feature is undergoing testing, and more details are to come.