Skip to content
GD
Back to projects

Research · UNIOESTE

UNIMET

I developed UNIMET through undergraduate research at UNIOESTE, supervised by professor Adriana Postal. The project automates access to INMET weather data and lets users customize data frequency for research and public use.

  • Node.js
  • Express
  • TypeScript
  • React
  • MUI
Context
Research · UNIOESTE
My role
Fullstack developer · undergraduate research
My contribution
Node.js/Express API and React/TypeScript interface to automate historical queries and aggregate data at hourly, daily, weekly and monthly frequencies.
UNIMET interface for configuring weather data queries.
Institutional application · INMET weather data queries.

Problem: fragmented historical queries

The research started from a limitation encountered in INMET data access: queries of up to six months. Longer studies required multiple requests and manual concatenation of results.

UNIMET organizes station, date range and frequency selection in an interface familiar to existing INMET users, connecting data collection to analysis in science and agriculture.

Role and fullstack contribution

I worked on the Node.js, TypeScript and Express REST API to connect to the source and process data, and on the React/TypeScript interface with Material UI to configure and present queries.

Separating frontend and API helped organize responsibilities and reuse components. The work was developed in a data analysis, processing and visualization research context, with academic supervision.

UNIMET filters to select a station, period and frequency.
Weather query configuration.

Decision: access the source without local persistence

The API queries INMET's service and processes the data needed by the interface. The implementation described in the paper uses a simplified MVC adaptation, with controllers for routes and processing and supporting entities.

The workflow operates without its own database. Modular organization keeps the interface separate from integration and processing rules, making each part easier to maintain.

Decision: aggregate according to each variable's meaning

Queries support hourly, daily, weekly and monthly frequencies. Hourly data follows the source response; other frequencies apply processing according to each field's meaning.

Rainfall is summed over the period; solar radiation uses the sum of positive values; extremes use maxima and minima. Fields such as pressure, wind speed and humidity use averages. In the described method, mean temperature is calculated as (Tmax + Tmin) / 2.

Evidence and results

The undergraduate research paper records the implementation of frequency customization and a modular interface. The public application and backend repository provide evidence of the query workflow and its technical organization.

The deliverable combines collection, temporal processing and CSV/XLSX export in a dedicated interface, allowing data to move into spreadsheets and other analysis tools.

Limitations and scientific context

The project depends on access to and documentation of INMET's API, as well as measurement availability by station and period. The research recorded challenges in integrating with this external source.

The aggregation rules described are implementation choices. Scientific use requires checking data quality and whether the method suits the intended analysis, retaining attribution to INMET.

© 2026 Guilherme DeitosFullstack developerLab