Skip to content

๐ŸŒง๏ธ A weather app made in React native and Expo ๐ŸŒง๏ธ

Notifications You must be signed in to change notification settings

Maxiomm/Prometeos

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

2 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

๐ŸŒฆ๏ธ Prometeos

๐Ÿ“‹ Description

Prometeos is a cross-platform mobile application developed with Expo and React Native that allows users to search and view current weather conditions for various cities. It includes features like adding cities to favorites, changing the temperature unit (Celsius/Fahrenheit), automatic switching between light and dark map modes based on the time, and multilingual support.

โœจ Features

  • ๐Ÿ” City search with automatic suggestions.
  • ๐ŸŒก๏ธ Display current weather conditions for a city: temperature, local time, sky condition with emojis.
  • โญ Add cities to favorites for quick access.
  • ๐Ÿ”„ Change temperature unit between Celsius and Fahrenheit.
  • ๐ŸŒ Multilingual support (French, English, Spanish).
  • ๐Ÿ“Œ View favorites with city names automatically translated according to the selected language.
  • ๐Ÿ—บ๏ธ Dynamic maps: switch between light and dark mode based on the time of day.

๐Ÿ“‚ Project Structure

  • App.js : ๐Ÿ  Entry point of the application with tab navigation configuration (Search, Favorites, Settings) and global context.
  • FavoritesContext.js : โญ Context to manage favorites (add, remove, reset).
  • TemperatureContext.js : ๐ŸŒก๏ธ Context to manage the default temperature unit (Celsius or Fahrenheit).
  • components/ : Contains the main components of the application.
    • WeatherManager.js : ๐ŸŒฆ๏ธ Manages search, city validation, and weather data display.
    • FavoritesPage.js : ๐Ÿ“„ Displays favorite cities and allows navigation to their weather forecast.
    • CityInput.js : โœ๏ธ Input component with suggestions for city search.
    • WeatherDisplay.js : โ˜๏ธ Displays weather data, local time, and a button to add/remove favorites.
    • CityMap.js : ๐Ÿ—บ๏ธ Displays a map centered on the selected city.

๐ŸŒ Multilingual Configuration

Localization is managed with i18next, and translations are stored in JSON files. City and country names are translated using API calls and the i18n-iso-countries library.

๐Ÿ“ธ Screenshots

๐Ÿ” Search โญ Favorites โš™๏ธ Settings

๐Ÿ‘ฅ Contributors

  • Maxime Rollin - Lead Developer

About

๐ŸŒง๏ธ A weather app made in React native and Expo ๐ŸŒง๏ธ

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published