Skip to content

Latest commit

 

History

History
48 lines (29 loc) · 1.57 KB

README.md

File metadata and controls

48 lines (29 loc) · 1.57 KB

Notes

Using yarn for package management

Using https://vitejs.dev for build/dev management

Client side (browser) code written in Typescript using the https://mantine.dev react component library

Using https://github.com/fabien0102/openapi-codegen to generate code from the openapi spec of the api

yarn run gen

will regenerate the code in src/generated - this will require the API component to be up and running at the time. The code is checked in to version control as parts of it are expected to be hand edited anyway.

the generated code uses https://github.com/tanstack/query

Note that the autogenerated proposalToolSchemas.ts file needs some further manual editing to add some necessary type information - this is done by applying the Add_@types.patch file with

patch src/generated/proposalToolSchemas.ts Add_@types.patch

To create a new patch file

cd src/generated;diff -Naur proposalToolSchemas.ts.orig proposalToolSchemas.ts > ../../Add_@types.patch 

Other client side libraries used

Security

follows https://datatracker.ietf.org/doc/html/draft-ietf-oauth-browser-based-apps-14#name-token-mediating-backend architecture where the refresh token is not exposed to the javascript.

Misc