Skip to content
This repository has been archived by the owner on Oct 12, 2024. It is now read-only.
/ voyalert Public archive

App that alerts you upon the arrival or a departure of public transport

License

Notifications You must be signed in to change notification settings

ondrejnedoma/voyalert

Repository files navigation

VoyAlert

Version License Stars

An app that alerts you (by push notification or persistent alarm) upon the arrival or departure of a public transport vehicle from a stop

Packages

This is a monorepo managed by npm workspaces. The individual components of this project are stored in separate packages:

Package Name Description
@voyalert/app The React Native app
@voyalert/backend The Express backend server
@voyalert/utils Tiny dev utility scripts
@voyalert/i18n The i18next JSON files

Development progress

Upcoming features and improvements can be viewed on the Trello of VoyAlert.

Download

COMING SOON

Build

This section covers how to build the full project — both @voyalert/app and @voyalert/backend. Note that iOS is NOT supported as of now.

Requirements

Steps

  1. Start by cloning this repository and installing the dependencies:
git clone https://github.com/ondrejnedoma/voyalert
cd voyalert
npm i
  1. Add the Android Studio platform-tools to PATH. This folder is by default %LOCALAPPDATA%\Android\Sdk\platform-tools

  2. Create the ANDROID_HOME environment variable. This folder is by default %LOCALAPPDATA%\Android\Sdk

  3. Set up the app signing keys and the according gradle variables. Use these React Native instructions for reference.

  1. This step is optional. If you want to be able to use a custom backend with the app (and not only the default prod one), replace the voyalert/packages/app/android/app/google-services.json file with your own one, obtained from the Firebase console. Generate a Firebase service account private key, and place it in voyalert/packages/backend/firebase.json.

  2. Ensure Docker is up and ready to build the backend image:

docker ps
  1. Run the build command. A new terminal window will pop up (the React Native Metro server), close that window for the build process to finish:
npm run build
  1. After the build finishes, the app AAB can be found in voyalert/packages/app/android/app/build/outputs/bundle/release/app-release.aab, and the backend as a Docker image voyalertbackend.

Contributing

Feel free to open issues and pull requests regarding anything you think would be beneficial for this project!