bcgov / nr-fom

Forestry Operations Map
Apache License 2.0
0 stars 1 forks source link
actions bcgov docker eslint flnr javascript jest lwrs nodejs openshift podman postgis postgres rhel typescript

License Lifecycle:Maturing

Forest Operation Map (FOM)

FOM projects (proposals for logging, essentially) are submitted to FOM and made available for public review and comment. The submitting organization then needs to address the comments before submitting the project to the ministry.

Technical Details

Technology Stack: Angular, Node.js with Nest/TypeORM framework, PostgresSQL with PostGIS running in OCP v4

The officially supported version of node is v14 LTS and npm is v6.

This is a repo that includes the API backend and the two Angular front-ends with a shared 'libs'.

Documentation

See ministry Confluence site: https://apps.nrs.gov.bc.ca/int/confluence/pages/viewpage.action?pageId=83560736

Local Development

Once set up, the stack can be access using the following paths on localhost:

Docker Compose

Individual components can be started separately or daemonized. E.g. database in the background (daemonized), the api in the foreground:

docker-compose up -d db
docker-compose up api

Connect to local database:

To rebuild local database from scratch

This drops and recreates the database and runs all migrations including test ones. (Although migrations are also run when starting the API component, test migrations only run at startup if environment variable DB_TESTDATA = true)

To explicitly delete database:

Database Migrations Setup

Application Specific Setup:

Client Library Generation

Upgrading 3rd party dependencies

Due to the minimal automated tests, the following should be done after major dependency changes:

How to Contribute

If you would like to contribute, please see our CONTRIBUTING guidelines.

Please note that this project is released with a Contributor Code of Conduct. By participating in this project you agree to abide by its terms.

License