Skip to content
Snippets Groups Projects
user avatar
authored
user avatar
Name Last commit Last update
..
docs/overview/index.md

Overview

data.grandlyon.com is a web platform owned by the Métropole de Lyon, aiming at facilitating and promoting the sharing of (open) data provided by public and private actors of the Lyon metropolitan area.

data.grandlyon.com consists of two macro-components, a Web Portal and a Core:

In this respect, the Web Portal is just one among the (hopefully) many Core's clients, in the same way as 3rd-party client applications:

This development project concerns the Web Portal component only.

Main features

The data.grandlyon.com's Web Portal includes the following main features:

Concerned entity ID - Description Users
Datasets F0 - Download the entire dataset catalog as a CSV file
F1 - Presenting metadata (title, description, terms, ...)
F2 - Showing tabular views of data (if applicable)
F3 - Showing map views of data (if applicable)
F4 - Showing linked resources (APIs, files)
F5 - Performing full-text searches against data and metadata
F6 - Performing faceted searches against metadata
F7 - Composing custom queries against the Core APIs
end-users
Users F8 - Creating/updating/deleting accounts
F9 - Performing logins and logouts
F10 - Gaining access to restricted-access resources
end-users
Editorial Content F11 - Editing static pages (approach, terms of use, ...)
F12 - Displaying static pages (approach, terms of use, ...)
F13 - Editing articles
F14 - Displaying articles
F15 - Editing the catalog of partners (data producers, ...)
F16 - Displaying the catalog of partners (data producers, ...)
F17 - Editing the catalog of data reuses (applications, websites, articles, ...)
F18 - Displaying the catalog of data reuses (applications, websites, articles, ...)
F19 - Editing the catalog of the Open Source initiatives powering this project
F20 - Displaying the catalog of the Open Source initiatives powering this project
back-office
end-users
back-office
end-users
back-office
end-users
back-office
end-users
back-office
end-users
Support F21 - Allowing users to contact the user support end-users

The data.grandlyon.com's Web Portal also features an independent GUI allowing the back-office users to administer the editorial content.

Architecture

...an overview...

Components

Core components

The following table lists, in alphabetical order, the components of data.grandlyon.com's Core macro-component that are used by the Web Portal:

ID Name Type Website Usage
C1 Legacy AUTH custom AUTHN/AUTHZ service
C2 PostgreSQL + PostGIS off-the-shelf Link Data Source
C3 GeoNetwork off-the-shelf Link Metadata Catalog
C4 MapServer off-the-shelf Link WMS and MVT Server

The latter components being provided by the Core macro-component of the data.grandlyon.com platform, their development is beyond the scope of this project.

Off-the-shelf applications

ID Name Website Usage
A1 Elasticsearch Link Search Engine
A2 Ghost Link Headless CMS
A3 Kong Link API Gateway
A4 Matomo Link Web Analytics
A5 MinIO Link Object Store
A6 Postfix Link SMTP Server

Middlewares

ID Name Lang Repo Doc Usage Deps
M1 Legacy AUTH TS Link Link Facilitating the interaction between the Web Portal Authentication Service (S1) and the AUTHN/AUTHZ Service (C1) hosted by data.grandlyon.com's Core macro-component C1, S5

Proxies

ID Name Repo Doc Usage Deps
P1 Web Mapping Services Link Link Proxying requests that the Web Portal performs against the cartographic Web Services (WMS, MVT) hosted by data.grandlyon.com's Core macro-component A1, C4

Indexers

The following custom indexers are used to index documents in Elasticsearch (A1) in order to make them full-text searchable.

ID Name Repo Doc Usage Deps
I1 Editorial Content Link Link Indexing the posts and pages edited via Ghost A2
I2 Metadata and Data Link Link Indexing the metadata and data hosted, respectively, by data.grandlyon.com's catalog (C3) and database (C4) C3, C4

Tools

ID Name Repo Doc Usage Deps
T1 MinIO master-slave replication tool Link Link Replicating/mirroring the assets stored in one "master" instance of MinIO to some other "slave" instances A5

Services

In alphabetical order:

ID Name Repo Doc Usage Deps
S1 Authentication Link Link Allowing users to create accounts and to perform logins and logouts A3, S5
S2 Changelog Link Link Keeping track of the new features available to users throughout the developments
S3 Credits Link Link Catalog of the Open Source initiatives powering the data.grandlyon.com project
S4 CSV Catalog Downloader Link Link Allowing users to download cached CSV exports of the metadata catalog C3
S5 Mailer Link Link Sending e-mails to both end- and back-office users A6
S6 Media Library Link Link Managing the images shown across the various pages of the Web Portal (organizations, posts, ...)
S7 Organizations Link Link A catalog of the partners of the data.grandlyon.com, typically Data Providers S6
S8 Resources Helper Link Link Assisting users in the composition of custom queries against the Core APIs
S9 Reuses Link Link A catalog of the known reuses of the data shared through data.grandlyon.com S6
S10 Social Media Share Helper Link Link ... ...

Custom applications

ID Name Repo Doc Usage Deps
D1 Web App Link Link Web Application representing the actual Web Portal as seen by its end-users S[1,9]
D2 Admin GUI Link Link Back-office oriented web application allowing users to administrate some of the editorial content as well as the configuration of some functionality S[1,3], S[6,9]

Miscellaneous

ID Name Repo Doc Usage Deps
M1 Maintenance Page Link Link A static HTML page to be used whenever the official site has to go offline because of some maintenance tasks

# TODO

  • Elasticsearch -> off-the-shelf app + custom cache & AUTHZ layer
  • Scripts related to the Kong setup