-
Notifications
You must be signed in to change notification settings - Fork 43
Home
The PIMS solution will provide a geo-spatial inventory of properties to assist Strategic Real Estate Services branch of Real Property Division to manage and oversee the disposal of assets surplus to government, optimize the benefits to the government and citizens of BC related to the management of public real estate assets, and be a trusted source for accurate information for Government owned titled property.
This is a public site. No private information should be stored here.
PIMS provides a securely shared central inventory of properties, and a claim based workflow engine that assists agencies in the disposal of properties. PIMS is an opensource microservice container platform, built from the ground-up to support reuse, scalability, and customizability. In addition to a web application, the open API can provide integration with 3rd parties and other agencies.
PIMS provides a way for agencies to manage their inventory of properties and control who has access to this information, along with what they can do with it. It provides a way to follow mandated processes to identify and dispose of properties through the Surplus Property Program (SPP). Properties can now be reviewed co-operatively to provide approval and to identify issues.
Designed and developed to support continous development through transparent Agile processes. Developers are able to replicate the whole architecture locally to build, debug and enhance.
DevOps CI/CD pipelines, configuration, scans and testing all setup and running (infrastructure as code). Commits to the dev
branch are immediately built, tested, scanned and deployed to the DEV environment for QA. Merges to the master
branch are tagged, built, tested, scanned and deployed to the TEST environment for UAT. Upon approval tagged artifacts can be deployed to the PROD environment.
The PIMS technical architecture stack continues to grow as features and enhancements are added. The current components and integrations are listed below;
Title | Description |
---|---|
Start Developing | How to get your local environment setup and start development |
GitHub Workflow | GitHub workflow information |
Architecture | PIMS architecture design information |
Security | PIMS security information |
Database | PIMS database design information |
API | PIMS RESTful API information |
Swagger | Swagger documentation for API |
APP | PIMS Application information |
OpenShift | OpenShift documentation |
DevOps CI/CD | DevOps documentation |
Code Quality | Code Quality information |
Versions | Version information |
Title | Description |
---|---|
Light Workflow Engine | Workflow architecture design information |
Notifications | Notification architecture design information |
Title | Description |
---|---|
Converter | Converter Excel Worksheets into JSON |
Importer | Parse JSON files and send them to an API endpoint |
Keycloak Sync | Synchronize Keycloak with PIMS |
Title | Description |
---|---|
Submit Surplus Property Process Project | SRES Workflow to submit a disposal project |
Assess Surplus Property Process Project Request | SRES Workflow to assess a disposal project |
Component | Technical Stack | Version | Description | |
---|---|---|---|---|
Application | ||||
Application | React/Node | 16.12.0/10 | UI for PIMS | |
API | .NET Core | 3.1 | RESTful Open API for data access | |
Database | MSSQL | 2019 | Inventory datasource | |
Authentication | KeyCloak | 7.3.0.GA | Authenticate users | |
GIS | ||||
Mapping | Leaflet | Source for UI maps | ||
Layers | Data BC | Mapping layers (i.e. parcel boundaries) | ||
Civic Address | Geocoder | Validating and fetching Civic Addresses | ||
PID | Geocoder | Fetching PIDs for validated addresses | ||
Notifications | ||||
CHES | Notification via Common Hosted Email Service | |||
Infrastructure | ||||
Source Code | GitHub | Source code repository | ||
GitHub Actions | GitHub | GitHub Actions ensure stability before allowing merge | ||
Cloud Hosting | OpenShift | 3.11 | Environment for solution | |
DevOps Hosting | OpenShift | 3.11 | CI/CD pipeline environment | |
DevOps Pipeline | Jenkins | 2.138.4 | CI/CD pipeline tooling | |
Containers | Docker | Container platform tooling | ||
Authentication | Open ID Connect | 2.0 | Identity membership managed by IDIR, BCeID and GitHub | |
EF Core | EntityFramework Core | 3.1.3 | A lightweight, extensible, open source and cross-platform version of the popular Entity Framework data access technology | |
Redux | React+Redux | 4.0.5 | A Predictable State Container for JS Apps | |
Formik | React+Formik | 2.1.4 | Build forms in React, without the tears | |
Typescript | Javascript | 3.7.3 | TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. |
There are a number of tools used to develop and analyze the PIMS project.
Name | Description | |
---|---|---|
CodeCov | Improve your code review workflow and quality. Codecov provides highly integrated tools to group, merge, archive, and compare coverage reports. | |
UptimeRobot | Uptime Robot is all about helping you to keep your websites up | |
SonarQube | SonarQube empowers all developers to write cleaner and safer code. | |
Snyk | Automatically find, prioritize and fix vulnerabilities in your open source dependencies throughout your development process. | |
Jira | The #1 software development tool used by agile teams | |
Confluence | Confluence is your team workspace where knowledge and collaboration meet to achieve great things. | |
Miro | Scalable, secure, cross-device and enterprise-ready team collaboration whiteboard for distributed teams. | |
UXPin | Design tool like no other. Prototypes that feel real, with powers of code components, logic, states and design systems. | |
GitHub | Provides hosting for software development version control using Git. | |
OpenShift | OpenShift is a family of containerization software developed by Red Hat. Its flagship product is the OpenShift Container Platform—an on-premises platform as a service built around Docker containers orchestrated and managed by Kubernetes on a foundation of Red Hat Enterprise Linux. | |
Jenkins | The leading open source automation server, Jenkins provides hundreds of plugins to support building, deploying and automating any project. | |
Keycloak - DEV | Keycloak is an open source software product to allow single sign-on with Identity Management and Access Management aimed at modern applications and services. | |
Keycloak - TEST | Keycloak is an open source software product to allow single sign-on with Identity Management and Access Management aimed at modern applications and services. | |
Keycloak - PROD | Keycloak is an open source software product to allow single sign-on with Identity Management and Access Management aimed at modern applications and services. |