The Relicans

Cover image for Marina Litter Watch API and Data Formatter

Marina Litter Watch API and Data Formatter

imjoseangel profile image Jose Angel Munoz ・Updated on ・2 min read

What I built

An API and data sender to consume raw data from a CSV downloaded from the European Environment Agency. More specifically, from the Marine LitterWatch project.

Category Submission:

Science and Observation

App Link


Screen Shot 2021-02-18 at 15.27.51

Screen Shot 2021-02-18 at 15.28.08

Screen Shot 2021-02-21 at 21.10.57

Screen Shot 2021-02-18 at 15.28.30

Screen Shot 2021-02-21 at 21.07.54

Screen Shot 2021-02-21 at 21.08.32

Screen Shot 2021-02-21 at 21.09.18


Python Flask solution that prepares the data and serves it through an API in JSON Format. The database is updated automatically from the EEA and the data sent every minute to New Relic. All the solution has been created in a K8S Cluster. The Infrastructure architecture and the manifests are also part of the code.

Link to Source Code

Permissive License



Litter, plastics in particular, is accumulating in our seas and coasts. Information and data on marine litter is essential for tackling it.

Marine LitterWatch (MLW) is a European Environment Agency (EEA) participatory science approach that empowers individuals and communities to take up action and fill in the data gaps that hamper the implementation of essential measures towards litter-free coasts and seas. The EEA MLW community members have collected more than 2 million beach litter items with 3288 beach surveys and registered them to MLW database in the last 7 years. More than 80 % of these items are plastics.

This API Solution is an approach to help consuming the data from the MLW project.

How I built it

I have used the following items:

  • The Event API as the main resource to send the data every 10 minutes.
  • The query builder and data explorer to create the graphs.
  • The graphs Share/Get Chart Link (Embeddables) option to embed them into the portal.
  • The Dashboard to keep the graphs.
  • The APM to monitor the application.
  • Notification Policies to receive unavailability Alerts.

Discussion (2)

Editor guide
realchrissean profile image
Chris Sean 🪐


imjoseangel profile image
Jose Angel Munoz Author


Still working on adding different other graphs to the dashboard.