Portfolio of Web Design and Development - Early Warning and Response System

In 2019, Nicolás and Miguel designed and developed the Early Warning and Response System (Sistema de Alerta y Respuesta Temprana or SART in Spanish) software platform for the Honduras Human Rights Ministry.

Published on
Secretaría de Derechos Humanos de la República de Honduras
Year
Features
A Full-Stack website developed with FastAPI, Angular, MongoDB, and Docker.

What we did

  • Frontend (Angular)
  • Backend (FastAPI)

The following are details about the project. The Honduran government uses the platform internally, and we cannot share screenshots of the platform.

The problem

The Honduras Human Rights Ministry needed a platform to manage alerts of possible human rights violations in the country and to take action to prevent or mitigate them. The platform should allow users to create alerts, assign them to various authorities and decision-makers, and track them until they are resolved.

The platform needed different features and elements to meet the Ministry’s needs. The web platform had to be accessible from any device, easy to access and intuitive, and capable of recording geographical and temporal information, loading media files, and creating reports and statistics on the warning alerts received.

Our solution

We designed and developed the SART platform in collaboration with human rights specialists, coordinator and researcher Natalia Arce Camiade, and researcher Nick Middeldorp.

Back-end

The SART back-end is developed with the FastAPI Python API framework. FastAPI is a modern framework. Additionally, it supports the OpenAPI standard, allowing API documentation to be generated automatically.

Interactive documentation

Using FastAPI development best practices, we extensively documented all API access points and all data models used. We then generated interactive API documentation using Swagger, allowing future platform developers to test the access points directly from the browser.

Database

Because of the nature of the data used on the platform, we chose a NoSQL database. In particular, we use MongoDB, a document-oriented NoSQL database, it gave us the flexibility to store the data without having to define a rigid data schema. In addition, it allowed us to store media files directly in the database, which makes their management and backup easier.

Statistics and direct reports from the database

One of the reasons we chose MongoDB is its data aggregation pipeline, which allowed us to generate reports and statistics directly from the database without processing the data in the backend.

A predictive model to prioritize alerts

We developed a predictive statistical model to prioritize alerts that integrates a feedback system to improve its accuracy over time in collaboration with Natalia and Nick.

Front end

Developed with Angular, SART’s front end is a modern framework for developing web applications.

Modern and accessible user interface

SART's user interface design is modern and based on Google design standards. Its accessibility allows users with physical disabilities to use the platform smoothly.

Responsive design

SART’s layout adapts to any device, allowing users to access the platform from a computer or smartphone.

Interactive maps

We used the OpenLayers open-code library to create interactive maps for users to engage with to locate the geographical information of the alerts.

Documentation

We used Compodoc to generate interactive documentation of the user interface for the front end, which allowed us to generate UI documentation automatically and keep it up to date with the code.

Security

Data security is fundamental for the platform. We implemented an authentication and authorization system based on JSON Web Tokens (JWT) and Role-Based Access Control (RBAC.) We designed a flexible permit system that adapts to the needs of the Human Rights Secretariat.

We also developed a secondary authentication implementation that allows for integrating the authentication system used by Honduras, which can be available for future use.

Display

For the website display, we used Docker, a tool that allows you to package applications in containers to deploy the platform on any server without having to worry about its dependencies.

More from Our Web Design and Development Portfolio

Extraditions, the banishment of Mexican justice

In 2023, La Verdad approached us with the idea of developing an interactive story for their most recent investigation, a look into how extraditions of criminals from Mexico to the United States negatively impact justice for victims of crime in Mexico.

Read More

Coca-Cola’s token: Tactics to influence public health policies

This is one of the most notable works Nicolás and Miguel have developed as the POPLab team for journalist Kennia Velazquez's reporting and won the 2022 Fetisov Journalism Award.

Read More

Tell us about your project