nwfsc-fram / boatnet

At-Sea Field Data Collection Software Components for Scientific Surveys and Observers
8 stars 5 forks source link
fisheries noaa

Boatnet

Boatnet provides a suite of tools for collecting fisheries scientific survey and observer monitoring data while aboard commercial, recreational, and NOAA vessels. These include a tablet app for observers and surveys to capture their haul-level catch information and a mobile app for captains to keep track of observer-monitored trips.

For more details about each project, please refer to the Wiki

FRAM Screenshot: Tally App

For those only interested in running the project follow the How to build and run section and ignore the rest. The remaining sections are for development purposes only. Note: We are currently working on simplifying the process and in the future you can just download an executable and run the application.

Note that without a CouchDB, large sections of the application will not function correctly. We are working on releasing a test version of the CouchDB data.

Projects

Please refer to the Wiki for project descriptions. Also, see miscellaneous supporting Docs.

Boatnet contains multiple projects located in different directories. Note that all of the projects are currently a work in progress!

OPTECS (Observer Program Technology Enhanced Collection System)

Directory: apps/obs-wcgop-optecs

Observer Mobile Apps

Directory: apps/obs-web

Survey Applications

Directory: apps/surv-*

How to build and run

Boatnet uses the lerna + yarn workspace monorepo pattern.

  1. Install Node.js - download here

  2. Install yarn

    • npm install -g yarn

      NOAA Windows 10 Users may need to set a couple environment variables:

      • in System Variables - Path add: C:\Users\\[User.Name]\AppData\Roaming\npm\
      • in System Variables - NODE_PATH set to: C:\Users\\[User.Name]\AppData\Roaming\npm\
  3. (OPTIONAL) Install Visual Studio Code - download here (We use and recommend this IDE for development)

  4. Clone the repository: git clone git@github.com:nwfsc-fram/boatnet.git

  5. Install lerna globally: npm install -g lerna

  6. Run lerna bootstrap (runs npm install, builds single node_modules)

  7. Run lerna clean (cleans node_modules in subfolders)

  8. Run lerna run build (builds all apps and libraries. This is optional, but should be performed prior to pushing changes, to ensure all projects still build correctly.)

  9. When running the app locally, you'll need to run the dev-auth-server running in order to login. Do this by following the instructions here

  10. Navigate to the project you need, e.g. cd apps/example and yarn serve

  11. See more specific lerna instructions, troubleshooting, and development setup here.

Additional Comments