From the 29th of June to the 3rd of July, the Bolsena yearly Geonetwork code sprint took place remotely! The team was spread into groups from France, Netherlands and Canada. It was a great opportunity to federate around the project and start new big tasks.

GeoNetwork CodeSprint Bolsena 2020 | © Camptocamp

Community Meeting

It was the perfect time to meet, just after the Geonetwork Community Meeting - a great success that helped the team to have a better vision about the user usage and expectations. During this meeting we presented 3 development axes, that we focused on during the sprint

  • Geonetwork 4 with Elasticsearch

  • Micro service oriented architecture

  • Next generation User Interface

We wanted to push forward this momentum toward GN4 release, but also toward what we would like to see GN5 to be made of. It is time to foresee the future, push the first stones of what Geonetwork could be in a couple of years.

We actually saw a great interest about Geonetwork 5 proposals during the meeting so we focused on those topics to provide the first components, to oversee issues and to be able to establish a roadmap to communicate to the community, users, customers and funders.

Microservices First

The meeting presentation proposed great ideas and the sprint was a great opportunity to initiate such kind of architecture. We wanted to start simple: implement the search as a micro service and orchestrate it through the gateway API. What is great is that the search depends only on 2 other things:

  • The index

  • User roles and rights

If we are able to propagate the user information and authorisation through a token then we don’t need to access the database, which is great for our use case. So the java project handles a JWT to fetch user info and auth, and we started to play with Spring-cloud gateway to orchestrate the architecture.

Overall, it’s a great first start to put the basics of the architecture.

Better User Experience

Following the future UI proposal, we worked hard to set up a clean and complete scaffold for the UI project, with healthy architecture, guidelines, and implementation of the first use cases. Webcomponents exports, Server Side Rendering for SEO (Search Engine Optimization), CSS variable and live customisation, CI/CD, test coverage, openapi generator, storybook showcases for components.. All these topics have been covered during the sprint and we are really excited to see the state of this project, all ready for features integration. We are setting up a roadmap to see what will be the next step of the implementation, focusing on public UI, search and detail pages. You can already watch the first mockups !

What’s next ?

Of course developers worked on the actual version and on miscellaneous tasks for the next GN4 release planned for the end of the year. Beside that, we will try to keep the momentum about GN5 and work on funding plans for those exciting features.

Thanks to all participants and sponsors, it was a great and prolific event.