bcgov / nr-bcws-wfnews

Primary code repository for WFNEWS 2.0

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

BCWS Situation Report (WFNEWS)

Lifecycle License

Sonar Status

Bugs Maintainability Rating Reliability Rating Security Rating Vulnerabilities

Welcome to WFNEWS 2.0

This is the primary code repository for WFNEWS 2.0

The high-level goals of the Wildfire News project are:

  • Consolidate the Wildfire Dashboard, Wildfires of Note and Current Wildfire Activity into a single application.
  • Replace Wildfire News Application with richer functionality that requires minimal training.
  • Use a Content Management System to manage information where it makes sense.
  • Provide a map interface option for public users, while addressing issues identified with current sites.
  • Streamline access to Wildfire and related incident information
  • Consolidate Public Mobile application functionality with Wildfire Situation Report functionality

Technologies used

Getting Started

Local Deployment

For local development, we recommend starting individual services with Docker

You can create a database instance via

docker run --name wfnews-postgres -e POSTGRES_USER=wfnews -e POSTGRES_PASSWORD=password -p 5432:5432 -d postgis/postgis:13-3.3
docker pull postgis/postgis:13-3.3

And build the database model with Liquibase:

docker build -t liquibase -f Dockerfile.liquibase.local .
docker run --rm liquibase --url=jdbc:postgresql://<your instance ip>:5432/wfnews --changelog-file=main-changelog.json --username=wfnews --password=password update

Similar docker scripts are provided for running the WFNEWS API and UI respectively. Local development configurations are provided for running the Angular application outside of the Java Spring container.

Storybook

For UI/UX development we have Storybook for developers. You can run storybook using the following command:

ng run WFNEWS:storybook

Create stories for any new or rewritten compoenents.

Node 18+ is required.

CI/CD for DEV/TEST/PROD Deployments

The WFNEWS project is built and deployed via Github actions. A Terraform cloud team server handles running the Terraform. A CI pipeline is setup to run static analysis of the Typescript.

Testing

This project is tested with BrowserStack

About

Primary code repository for WFNEWS 2.0

License:Apache License 2.0


Languages

Language:JavaScript 66.5%Language:Java 12.2%Language:TypeScript 9.1%Language:HTML 3.8%Language:SCSS 3.5%Language:CSS 2.2%Language:HCL 1.6%Language:Python 0.5%Language:MDX 0.3%Language:Scheme 0.2%Language:Dockerfile 0.1%Language:Swift 0.0%Language:PLpgSQL 0.0%Language:PowerShell 0.0%Language:Shell 0.0%Language:Ruby 0.0%Language:Scala 0.0%Language:Batchfile 0.0%