top of page

Real-time Weather Explorer
React Web Application

A web application designed to quickly check current weather conditions across multiple locations worldwide. Users can select a country and search for a specific city to retrieve real-time weather data through an external API.

Role: Frontend Developer

Stack: HTML · CSS · TypeScript · Zustand · Weather API

Focus: API integration, state management, and responsive UI development.

weather

Project Overview

This project is a lightweight web application that allows users to check real-time weather conditions for cities around the world. The app connects to a weather API to retrieve live data based on user input, combining a simple interface with efficient state management and API integration.

Codebase Overview

The codebase follows a modular structure that separates data fetching, state management, and UI rendering. This improves maintainability while keeping the application scalable and easy to extend.

  • Modular folder structure for clear organization

  • Centralized state management with Zustand

  • API layer for handling weather requests

  • TypeScript interfaces for type-safe API responses

Key Features

City-based weather search

Country selection for location filtering

Real-time weather data via API

Global state management with Zustand

Responsive interface built with pure CSS

Design & Development Tools

The development process focused on building a modular and scalable structure while keeping the application lightweight.

Ensures type-safe API responses.

Typescript

icons8-mecanografiado-100.png

Used to build dynamic UI components.

React

react

Implemented for global state management.

Zustand

icons8-state-100.png

Providing real-time weather data.

APIs

icons8-api-100 (1).png

Development Process

The project was developed with a focus on simplicity and modularity. The application integrates a weather API to retrieve real-time data while using Zustand for efficient state management. The interface was built with HTML and pure CSS to maintain full control over layout and styling, prioritizing performance and clarity in the user experience.

bluelight4_edited.png
Diseño sin título (3).png

Challenges & Learnings

Working with external APIs required careful handling of asynchronous requests and potential error states. Implementing TypeScript improved reliability when managing API responses, while Zustand helped simplify global state management. The project strengthened my understanding of API integration and frontend application structure.

Want to see more?

Use the button below to navigate the project and experience it firsthand.

bluelight2_edited_edited_edited_edited.p
bottom of page