Giter Site home page Giter Site logo

weather-app's Introduction

Dokumentacja aplikacji WeatherApp

Ten plik README zawiera przegląd prostej aplikacji pogodowej stworzonej przy użyciu Reacta oraz TypeScript, skupiając się na jej strukturze, komponentach, integracji z API oraz użytych technologiach.

Użyte technologie

  • React: Biblioteka JavaScript do budowania interfejsów użytkownika.
  • TypeScript: Rozszerzenie JavaScript dodające statyczne typy.
  • react-router-dom: Deklaratywny routing dla aplikacji React.
  • Tailwind CSS: Framework CSS oparty na klasach pomocniczych do stylizacji.

Komponenty

1. Generatory

W projekcie komponenty są tworzone i zarządzane ręcznie.

2. Routery HTTP

Routing jest zarządzany przy użyciu react-router-dom. Komponent BrowserRouter ustawia ścieżki dla różnych adresów URL:

<Router>
  <Routes>
    <Route path="/" element={<App day="today" />} />
    <Route path="/tomorrow" element={<App day="tomorrow" />} />
  </Routes>
</Router>
3. Szablony HTML

HTML jest renderowany przy użyciu składni JSX w komponentach React (App.tsx, Nav.tsx, DailyForecast.tsx).

4. Konektory do baz danych

Dla prostoty i ułatwienia korzystania z aplikacji pobieramy dane bezpośrednio z publicznego API (https://api.open-meteo.com/v1/forecast).

5. Integracja z API

Aplikacja integruje się z API Open Meteo, pobierając dane pogodowe na podstawie określonych parametrów (params w utils.tsx).

6. Użyte technologie
  • React: Zarządza komponentami interfejsu użytkownika i stanem.
  • TypeScript: Zapewnia bezpieczeństwo typów i zwiększa jakość kodu.
  • react-router-dom: Obsługuje nawigację między stronami w aplikacji.
  • Tailwind CSS: Zapewnia szybkie i responsywne stylizowanie komponentów.

Problemy i rozwiązania

  • Routing: Obsługiwany przy użyciu komponentu <Link> z react-router-dom do nawigacji między danymi pogodowymi na dzisiaj i jutro.
  • Integracja z API: Zaimplementowana w App.tsx za pomocą funkcji fetch() do pobierania danych pogodowych na podstawie określonych parametrów.
  • Stylizacja: Uzywamy Tailwind CSS do szybkiego i responsywnego stylizowania.

Uruchomienie aplikacji

Aby uruchomić aplikację lokalnie:

  1. Sklonuj repozytorium.
  2. Zainstaluj zależności za pomocą npm install.
  3. Uruchom serwer deweloperski za pomocą npm start.

Podsumowanie

Ten plik README przedstawia przegląd struktury aplikacji pogodowej, jej komponentów, integracji z API oraz użytych technologii. Opisuje sposób uruchomienia aplikacji lokalnie oraz wymienia narzędzia i biblioteki wykorzystane do budowy projektu.

Homepage-Today

Homepage-Tomorrow

weather-app's People

Contributors

adamrosloniec avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.