There are currently 2 packages to integrate keycloak-js with your Vue 3 WEB app.
https://github.com/dsb-norge/vue-keycloak-js
and
https://github.com/baloise/vue-keycloak
But each have their quirks and issues.
If you want to use keycloak in a native app, none of these work.
There is keycloak-ionic and someone created a repo https://github.com/marchalb/qkeycloak to showcase a modified version of dsb-norge/vue-keycloak-js and keycloak-ionic, but that also isn’t working.
So the current state for OIDC client apps is: NOT FUNCTIONAL
OIDC fails the K.I.S.S. principle. It is so complicated that no one has managed to write something that works for every scenario.
Mobile and Web are some very common scenarios, why is there nothing that provides this functionality?
I think it’s better to abandon OIDC, since all that’s left are commercial offerings and the open source ones don’t work properly,
and write your own auth package, which may not be as sophisticated but at least it will work for you and your needs and you know what it’s doing.