The Official FuelRats rescue info tracking application.
It is recommended that users wishing to just use the board should use the official live version instead of running their own.
Setting up the DWB for your own uses requires oauth client registration with the Fuel Rats API. If you wish to develop and test against a live server, contact Clapton on the FuelRats IRC. ( IRC Web Client / irc.fuelrats.com:+6697 ) The following guide assumes you have already done so, and have already registered your client.
- Node.js & NPM (for building the app)
- A Web Server (We recommend NGINX)
- Clone the repo
git clone https://github.com/FuelRats/DispatchWebBoard.git
- install dependencies
npm install
- Configure
- Duplicate and rename app.prod.config_example.js to app.prod.config.js, then open it.
- Refer to documentation in the example file to properly configure the config file.
- Build
npm run build
- Setup NGINX
- Either copy the generated "deploy" directory to a directory on your webserver, or point the webserver directly to it.
After this, load the page from the server and ensure that it's working correctly. If you can login and get rescues, then all should be running properly.
PRs are always welcome! If you wish to see open issues, visit the FuelRats JIRA (Project key: DWB)
See our CONTRIBUTING.md before developing for the Dispatch Web Board.
- We use gulp for our build tasks. We recommend you install gulp-cli (
npm i -g gulp-cli
) to build the project for development, howevernpm run gulp
works as well. - Use
gulp default
orgulp
when building for development. - This project's gulpfile has a rsync runner which is ran during the postBuild phase. To use it, setup the
rsync.config.js
file first, then activate it by using the--deploy
flag. - the gulp
--production
flag activates uglifyJS, cleans up any calls towindow.console.debug()
, and removes any code wrapped in/* DEVBLOCK:START */
and/* DEVBLOCK:END */
.
- clean-css - CSS compressor / build tool
- gulp 4 - Task runner.
- npm - Package Manager
- uglify-es - JavaScript compressor
- Webpack - JavaScript bundler / build tool
- clipboard.js - click-to-copy library.
- jQuery - "The oversized swiss army knife".