Melbourne is consistently among the top 5 cities with the highest crime rates in Victoria over 10 years [1]. 50% of women do not feel safe travelling at night [2]. 30% of young women do not feel safe in poorly-lit environments that are correlated with a high incidence of harassment. Although areas that they perceive safe have been mapped on an existing app [3], there is no app that shows evenly well-lit areas in Melbourne that creates the greatest safety perception. Dark areas and excessively bright areas heighten anxiety, so it is best for users to have access to adequately lit areas at their fingertips to create a safer community (UN Sustainable Development Goal 11 [4]).

A 2019 PwC report agreed that better availability of lighting contributed to greater personal safety, but the working adults felt the most unsafe [5]. A University of Melbourne study [6] concurred, with 90 from a 239 university students study (38%) finding it unsafe to travel after dark. A Monash x Arup study [2] has mentioned that brighter lights do not mean safer perceptions. However, this only applies to non-LED lights with great yellow intensity. Given that women prefer LED lights to distinguish colours more easily, the governments’ efforts to replace old non-LED lights with LED ones [7] meant that tracking council lights is useful for safe late-night travelling of university students and working adults. Introducing NiteLyte, an additional precaution measure to reduce anxiety after dark. An open-access safety app that anyone in Melbourne can access using public Wi-Fi. Users can immediately alert designated emergency contacts while migrating to safer, lit areas.

What it does

On the landing page, there is the logo, which brings you to the map interface after allowing app permissions to access the location. The map shows the pattern of neighbouring council lighting which can be zoomed in and out. This allows the person to direct themselves to the closest well-lit area. Then, they can press the panic alarm which alerts their chosen emergency contact of the situation through a Twillio SMS API. The user must register their profile to access the app, which includes personalised settings such as light / dark theme and to submit feedback to developers.

How we built it

  • Full-stack JS
  • React and Figma front-end
  • Firebase backend
  • Mapbox

Of which were completely new to us:

  • Next.js (react)
  • Mantine
  • Twillio API

Challenges we ran into:

Debugging: The backend team encountered crashes in Firebase from sub-processes and thus ports that continued running even when the emulator was stopped. To tackle this they remained productive by mutual understanding, frequent communication and checking the documentation carefully.

Design: The frontend team had to layout the application in the most feasible way. It is difficult to select and rearrange components on Figma and to write JS on simple functionality such as expanding the emergency contacts list. This was time-consuming but they managed to create the planned features in the end.

Pitching: We had many creative ideas which needed to be narrowed down which caused some upset. However, we remained open-minded with one another and managed to comprise so that everyone pitched into the app development.

Accomplishments that we're proud of

Hacking-Life balance: sufficient work accomplished in a high-pressure environment

Diversity: Team members come from biological, mechatronics and software engineering backgrounds to give a holistic approach to mission, implementation and design

Transparency: Regular updates and code-together live streams so that we can give and ask for feedback that is addressed promptly to deliver a product that best fits our target demographic’s needs.

What we learned:

Most of us were familiar with React but new to Next.js, which we chose since its opinionated structure saved us valuable time configuring routing, importing and exporting packages.

Mantine UI was also an interesting library to learn. There were a lot of similarities between Material UI and Mantine, which made the learning curve less steep, plus its hooks-based approach to configure forms made the library a delight to use.

Phone numbers have always been difficult to validate because there was a need to validate numbers from different countries (which also meant we had to support and validate different formats and lengths). Therefore, in favour of speed and efficiency, we used a package “react-phone-input-2” which gave us a handy component that auto-formatted the user’s input based on what country (and thus code) they selected.

Firebase authentication is something most of us developers were somewhat familiar with, but not the new v9 modularised firebase authentication methods. This involved adapting our previous knowledge of the v8 package into the new, updated way of configuring firebase and authentication with email and password. This v8 versus v9 challenge also translated into configuring and using firestore.

One of the main features on our app is to have ‘Emergency SOS’, which notifies the user’s emergency contacts via text message. Our team has thought of using Twilio as a communication API to send SMS through our app. All the members in our team did not have any experience with implementing Twilio, hence it was a bit challenging for us developers at first.

What's next for NightLyte by BlazingReact:

Partnerships for the goal (UN SDG 17 [4]): Seek funding from Public Transport Victoria and City of Melbourne Council in effort to reduce night crime by alerting the public about this open access safety tool with QR codes in public spaces. Expand Look into expansion by incorporating council lighting datasets from other cities and other states for all Australian users. Real-time: Twilio livestream to multiple specified contacts at once to get an accurate view of what is happening to the user which can also be available as evidence for investigations. This empowers assault victims in particular to report crimes to a trusted person as their incident is more likely to be believed [8].

Pedestrian counter and crime incidents retrieved from council databases. Lighting, high pedestrian count and low crime rate constitutes a single safety metric to display as a single-coloured hue heatmap.

Accessibility: Incorporate wheelchair-friendly and tactile paving databases to create accessible paths. Adding high contrast colours and icons, voice -over and translation capabilities with Google Cloud APIs.

Self-defence games: Matching cards for how to respond to the other person during a crime incident. OpenCV and Mediapipe libraries for real-time pose detection. An accuracy metric can be made available to the user or a threshold mark which determines if they have mastered a self-defense move.


  1. Parliament of Victoria (2018). Victorian Crime Statistics by LGAs, viewed 26/2/2022
  2. Kalms, N. (2019). More lighting in cities alone does not create safer cities for women, Monash University, viewed 26/2/2022
  3. Community Crime Preventation, Victoria State Government (2021). New research explores link between lighting and perceptions of safety, viewed 26/2/2022,
  4. United Nations (nd.). The 17 Goals, viewed 26/2/2022,
  5. Hosking, W. (2019). Future Victoria: The Victorians who feel most and least safe in their community, viewed 26/2/2022,
  6. Whitzman, C., Marathe, R., Thompson, J. (2019). Tertiary Students’ Public Transport Safety in Melbourne, Australia, The University of Melbourne, viewed 26/2/2022,!/Melbourne Australia 240119.pdf
  7. City of Melbourne (nd.) Street lighting, viewed 26/2/2022,
  8. Australian Bureau of Statistics (2021). Sexual Violence - Victimisation, viewed 27/2/2022,

Built With

+ 11 more
Share this project: