launchrctl / web

Launchr Web plugin
Apache License 2.0
1 stars 2 forks source link

[PLAN] Agenda for disqussion. #5

Open iberdinsky-skilld opened 4 months ago

iberdinsky-skilld commented 4 months ago

Current application, Open API, Swagger.

https://refine.dev/

https://axios-http.com/

https://chakra-ui.com/

https://www.openapis.org/

https://swagger.io/tools/swagger-ui/

https://rjsf-team.github.io/react-jsonschema-form/docs/

Extend json form with:

Alternatives. Webcomponents (Lit client)

https://github.com/json-schema-form-element/jsfe

https://jsfe.js.org/Sink/AllFeatures

https://shoelace.style/

Websockets (Async API) Refine Live provider.

https://www.asyncapi.com/en

https://developer.mozilla.org/en-US/docs/Web/API/WebSockets_API

https://refine.dev/docs/realtime/live-provider/

TODO.

davidferlay commented 3 months ago

Ideas of feartures / roadmap :

iberdinsky-skilld commented 2 months ago

Refactor current code.

We have added some changes to the existing backend code. They need to be tested and refactoring may be necessary.

PRs:

Also, the original code contains a lot of "to do" tags, they are also worth noting.

Launchr/plasma features to disquss for next iteration for web ui.

Action to start web-ui (listed in a special way in UI) > plasmactl action to start UI

plasmactl build -p github.com/launchrctl/launchr@latest,github.com/launchrctl/web@latest -n plasmactl -o plasmactl

This command not working yet. We need to load client assets into build.

List launchr commands brought by native plugins (as opposed to action file)

@davidferlay

integration/cognition workflow low code

@davidferlay

Async Api

I added proof of concept here https://github.com/launchrctl/web/pull/37

Everything works but definitely needs to be done by a more advanced backender. We also may need to use go channels to know when action started and when finished.

It can use same as OpenApi code generator https://github.com/lerenn/asyncapi-codegen

We can continue this work in parallel with development in OpenApi because working with an asynchronous backend is very simple in refine.dev so client app can be switched pretty easy.

Flows

I added a few ideas of what the home page could look like

Brand customisation.

If we suppose this app be used by various people/companies we should be able to provide different levels of ui customisation. Can be optional file web-ui.yaml with option to setup

iberdinsky-skilld commented 2 months ago

Flow disqussion

iberdinsky-skilld commented 2 months ago

Sidebar behaviour.

ReactFlow behaviour.

Flow tab.

Terminal styles approach.

Current state of backend.

TBD

iberdinsky-skilld commented 2 months ago

https://github.com/launchrctl/launchr/issues/26