-
-
Notifications
You must be signed in to change notification settings - Fork 489
GeoNetwork client app building blocks codesprint 1st and 2nd June 2020
François Prunayre edited this page May 27, 2020
·
18 revisions
Address:
- Monday/Tuesday: Olivier, Florent, Francois at the farm, 321, Route de la Mollière, Saint-Pierre-de-Genebroz, Chambéry, Savoie, Auvergne-Rhône-Alpes, France
- Florent
- Olivier
- Francois
- Arnaud
- ?
- titellus
- Spacebel
- Monday morning / Brainstorming based on concerns & recommendations from everyone. First draft guideline document (Florent, Olivier, Francois)
- Monday afternoon / Online meeting to present the options (All who are available)
- Tuesday / Write a first guideline & project basis setup
Define possible base rules for a new client application for GeoNetwork. Choose libraries and start setting up the project to be able to make prototype and show new possibilities required in some projects.
- AngularJS EOL is 2021
- Improve performances - we know why and how the client app can be faster eg. watchers, incremental DOM
- Make GeoNetwork easier to embed in a third party app eg. with shadow DOM
- …
- Technical debt
- Quite some years on overlaying features over features - all can be simplified
- Code style
- Nobody is using JSLint … probably because not mandatory or lazy devs ;)
- WRO4J works but is effectively a completely custom, hand-made bundler which is hard to maintain (written in Java for frontend devs…), based on old assumptions, and has such a large role in the build that it is almost impossible to get rid of
- No type checking
- No centralized state management
- No strict encapsulation of components (either scopes or styles), scopes are shared between many components eg. the search directive => this also means components are not really reusable outside of the standard UI
- UI
- Define UI design templates, so pages look as unified as possible across the application.
- Accessibility can be better
- UI configuration - how much config options? Good defaults? Merge a custom one with the defaults
- 2 notification systems
- Sometimes you can init app with the location URL (eg. search - most of the time, not in batch edit), sometimes not (point to a category page in the admin or an harvester).
- Limitations
- Using Jquery and Bootstrap means putting the app in a shadow dom is not feasible
- Improve the current asynchronous code to retrieve the information from the catalog that is needed in the UI.
- Testing
- No component testing
- …
- Performances
- Embedable
- Base project for building prototypes
- Discussion https://sourceforge.net/p/geonetwork/mailman/message/37021872/
- Results will be presented during GeoNetwork online user meeting 23 June 2020
If you have some comments, start a discussion, raise an issue or use one of our other communication channels to talk to us.