DIY Dynamic Frontend
This prototype can be used to only test and demo a functional frontend or to decouple frontend and backend development until it can be merged at a later point in time.
Construction Permit Use Case Frontend
Frontend implementation with RPC providers
Generic RPC Backend
Storage application
Frontend Application
The example application for Construction Permit Use Case illustrates the deployment of an automated service designed to streamline the entire process of approving construction permits.
Providers
The Construction Permit Frontend can switch between three providers:
Mock Provider
Local in-app preset values for required data
API Provider
Storage Provider
Browser's local storage / Data from Mock Provider if no data is available in the local storage
These providers extend the Base Provider which acts as an interface for needed methods and api calls.
All three providers contain the business logic in the front end and use the provider as data storage.
Deployment Guidelines
Run locally
Run application locally. Run like a react app
Docker
Run application in Docker
Kubernetes
Environment variables needed are described in Configuration
Backend Storage Application
For efficient data storage supporting the seamless exchange of information with the RPC layer, the application 'rpc-backend' serves as an ideal backend solution. It facilitates the storage, retrieval, and utilization of data crucial for the RPC layer's operations used when creating Dynamic Frontend Application covering specific use-case.
API Call
For example in Construction permit use case:
tenant
"building-permit"
any string
user
"user1"
One of 10 default users or any new registered user
Actual implementation can be found in the GovStack RPC Backend Repository.
Documentation can be found in GovStack RPC Backend Docs Repository.
Deployment Guidelines
There are multiple ways to run and use the rpc-backend storage app. The different ways and respective resources can be found in the table below:
Local Run
Run application locally, useful for development purposes. Should be run as Spring Boot app.
Docker
Run application as docker container
Kubernetes
All environment variable definitions can be found in GovStack RPC Backend Docs Repository.
Was this helpful?