React Weather

A simple weather app built with React Native and Realm

Mobile App DevelopmentJavaScriptMIT

Abstract

React Weather is an open-source Mobile App Development project. A simple weather app built with React Native and Realm. The weather data retrived from Open Weather is not very accurate. Most of the time, the weather forecast is not correct. It is built using JavaScript. The complete source code is publicly available on GitHub under the MIT License, making it a useful reference for students building a Mobile App Development mini project or final-year project.

1. Introduction

The weather data retrived from Open Weather is not very accurate. Most of the time, the weather forecast is not correct. The most reliable Australian weather data is hosted by Australian Bureau of Meteorology, however it is not very API friendly.

I wanted to learn how to make apps using React Native. Instead of inventing an app, I wanted to try and see how hard would it be to implement one of my favourite weather apps: Pocket Weather Australia. Full credits for user experience goes to them.

2. Objective

A simple weather app built with React Native and Realm

This project demonstrates how JavaScript can be applied to a real-world Mobile App Development problem.

4. Technology Stack

JavaScript
  • Flow was enabled to catch typing errors in React Native JavaScript code
  • Realm for React Native is used to persist data
  • I used Nuclide and Visual Studio Code on OSX, both have great support for React Native app development
  • I used git for version control, and stored progress on GitHub.
  • Currently only tested on an iOS device

5. System Requirements

General requirements for this technology stack — check the README for exact versions.

  • Node.js (LTS) and npm
  • A modern web browser
  • VS Code or any code editor
  • Git (to clone the repository)

6. Installation & Setup

git clone https://github.com/stage88/react-weather.git
cd react-weather
  1. Clone this repo git clone git@github.com:stage88/react-weather.git
  2. cd react-weather
  3. run npm install

Full setup instructions are in the project README.

7. Future Enhancements

Suggested extensions you can add to make this your own project.

  • Add push notifications with Firebase Cloud Messaging
  • Add offline support with local caching
  • Publish an internal test build on the Play Store

8. Viva / Review Questions

Common questions examiners ask for projects in this domain.

  1. Which framework is used and why (native vs cross-platform)?
  2. How is app state managed across screens?
  3. Where is the data stored — locally, Firebase or a REST backend?
  4. How are permissions (camera, location, storage) handled?
  5. How would you publish this app to the Play Store / App Store?

9. Source Code & License

This project is developed by stage88 and published on GitHub under the MIT License. Please follow the license terms and credit the original author when you use or modify this code.

Want to build this as your internship project?

Work on a Mobile App Development project like this with mentor guidance, weekly reviews and an internship certificate from Training Trains, Erode — online or offline.

Apply for Mobile App Development Internship