Open pcav opened 5 years ago
QWC2 is based on ReactJS which is different of web components.
I rewrote this RFC
@pcav I have rewritten the issue based on the template.
The idea under lizmap 4 is also to provide a framework, but to do so we have to provide a documentation of the elements and the API.
@nboisteault how to document JavaScript ?
Thanks @rldhont for the rewrite - I was not sure this small note deserved full attention.
@nboisteault sure, React has to be avoided,but perhaps other tools could be reused? The idea is reducing duplication of efforts and sharing the burden of basic application. Maybe we should discuss the other way around, what is the specificity of Lizmap compared to other solutions? To me it's mainly the ease of installation together with a ready to use complete set of features, especially permission management and online editing. Also being able to do almost all the configs graphically is a major advantage.
@pcav which tools do you think at ? How could we reuse those tools ?
I don't know qwc2 well enough to say. From what I read, their approach is modular, and some tools (e.g. permalink generation, elevation queries) seem reusable. See https://github.com/sourcepole/qwc2-server
@pcav Your link shows Python code.
Correct. The services are Flask applications, written in Python.
@pcav we would like to avoid dependencies to ReactJS, VueJS, AngularJS, Polymer, LitElement or other JavaScript framework. Even if they seem cool, they add dependencies to non standard elements.
To be reusable, Lizmap will proposed HTML Web Components based on W3C standard https://developer.mozilla.org/en-US/docs/Web/Web_Components
We will provide Lizmap JavaScript specific modules and some generic classes like the Dispatcher.
It makes a lot of sense to me.
Given that neither do I'm crazy about React (and anything else that isn't js native), but:
Have a good day, Raruto
We have studied all other frameworks:
None has convinced us.
We don't want other langages than EcmaScript (VanillaJS), HTML and CSS. So React or Preact are excluded because of JSX a faster, safer, easier JavaScript. And we don't want TypeScript.
We have studied all other frameworks, none has convinced us. We don't want other languages than EcmaScript (VanillaJS), HTML and CSS.
I reiterate that I fully agree with your choice (and it is also for the same reason that I am generally against choosing to developing another shiny new javascript "framework").
Anyway, is there already a summary of which web components or classes you are intending to use? and how it would work this stuff put all together? (folders, extensions, hooks, signals, events, ...)
PS: React JSX is not JSX: a faster, safer, easier JavaScript (which are however not required to work with p/react).
@Raruto We are working on this branch. We are just beginning as you'll see.
Lizmap RFC: Lizmap as a framework to build web mapping applications
Date 2019/07/30
Author Paolo Cavalini (@pcav )
Contact
maintainer @pcav
Version Lizmap-Web-Client 4.0
Summary
Does it make sense to share some of the components with other projects, e.g. https://github.com/qgis/qwc2-demo-app/blob/master/doc/QWC2_Documentation.md#quick-start ?
Proposed Solution
Structured and documentation about:
Backwards Compatibility
Keep some part of the already API like the capability to add widgets in the docks.
Issue Tracking ID(s)
https://github.com/3liz/lizmap-rfc/issues/1
Votes
(required)