Workflows
Frontend
Backend
Oracle-API
Natural Resources SPAR
This repository holds all SPAR directly related front-end client and back-end APIs codebase, and also a set of policies, standards, guides, and pipelines. Before pushing your first commit, please take a moment and check out our CONTRIBUTING guide.
Our Policy
- Work in the open: That means that everything we do should be open, should be public. Please, don't create private repositories unless you have a very strong reason. Keeping things public is a must follow rule for BC Government.
- Customer centred services: All the work that's been created is to improve users, customers, and friends usability and experience. Is important to keep that in mind because as engineers sometimes we face technical issues, however, our goal is to have a good product.
- Community based work: Remember that you're not alone. It's very likely that your problem is someone else's problem. Let's figure it out together. So, ask a question using our channels. We have our own Stackoverflow and our Rocket Chat channel.
Stack
Here you can find a comprehensive list of all languages and tools that are been used for all and every service. And also everything you need to get started, building locally, testing and deploying.
SPAR Client
- React PWA
- TypeScript
- Context API
- React Query
- MirageJS
You can learn more about this service looking its README
SPAR Back-end REST API - Postgres
- Java ecosystem
- Maven
- Open JDK 17
- Spring Web MVC Framework
- JPA and Hibernate Framework
You can learn more about this service looking its README
SPAR Back-end REST API - Oracle THE
- Java ecosystem
- Maven
- Open JDK 17
- Spring Web MVC Framework
- JPA and Hibernate Framework
You can learn more about this service looking its README
Getting started
Once you have cloned this repository, can get it running by typing: ./mvnw spring-boot:run
from the project root directory, if it's one of the Java services. You must provide some environment
variables for database access configuration, depending on what service you're trying to run. Please
see each service README to learn more details.
Quick look
But if all you want is to take a quick look at the running services and client, you can do it by using Docker Compose.
Run with:
docker-compose up --build -d
There should be four running services:
You can clean and remove the containers with
docker-compose down --remove-orphans
Getting a JWT token for SPAR services
- Head to BC Gov Keycloak OIDC Playground page
- Expand the first dropdown Keycloak OIDC Config option
- Update Auth server with: https://test.loginproxy.gov.bc.ca/auth
- Keep Realm as is, standard
- Update Client id with: seed-planning-test-4296
- Hit Upate
- Click the Login button
- Hit ID Token Raw token
- Optional: You can check your user's JWT token properties by checking the Token Parsed tab
Getting help
As mentioned, we're here to help. Feel free to start a conversation on Rocket chat or ask a question on Stackoverflow.