Skip to content

Latest commit

 

History

History
68 lines (44 loc) · 3.89 KB

introduction.rst

File metadata and controls

68 lines (44 loc) · 3.89 KB
local

Omówienie

Projekt Pola składa się z kilku podprojektów, którego rdzeniem jest proejkt pola-backend i na nim się skupimy w tym dokumencie

image

  • pola-backend - rdzeń aplikacji napisany w Django.
  • pola-ios - aplikacja na system iOS.
  • pola-android - aplikacja na system Android.
  • pola-flutter - aplikacja multiplatformowa napisana w Flutter (projekt niewydany).
  • pola-web - statyczna strona napisana w Gatsby.
  • pola-bi - zbiór narzędzi odpowiedzialnych za analityke biznesową.
  • pola-ai - sztuczna inteligencja rozpoznajaca produkty (projekt porzucony).
  • pola-facebook - chatbot na Facebook (projekt porzuczony).

Architektura

image

Założenia

  • pola-backend zapewnia dwie funkcjonalności:
    • API wykorzystywany jest przez pola-ios, pola-android, pola-flutter, pola-web.
    • CMS wykorzystywany jest przez redakcje do aktualizacji danych
  • pola-backend jest uruchamiana na platformie Heroku Platforma dostarcza kilka usług oodpowiedzialnych za monitoring:

    Ponad to dostarcza usługi składowania danych:

    Wykorzystywany jest również MailGun do wysyłania wiadomości z przypomniemiem hasła.

  • pola-backend jest aplikacja kontenerową wdrażana przez process Ci/CD uruchamiany na Github Action. Po szczegóły, patrz: Wdrożenie
  • pola-web jest rozwijana, jako niezależna aplikacja Gatsby/React, a następnie w procesie CI/CD uruchamianym na Github Action jest publikowana na wiaderku AWS Bucket Web. pola-web odczytuje dane z wiaderka i zwraca użytkowniką. Z tego wynika, że pola-backend i pola-web mogą być wdrażane niezależnie, ale wykorzystują wspólne wiaderko.
  • pola-backend wykorzystuje wiaderka na platformie AWS:
    • AWS Bucket AI Pics - przechowuje zdjęcia od użytkowników, które miały być wykorzystywane przez pola-ai (project porzucony).
    • AWS Bucket Backend - przechowuje pliki przesłane przez uzytkowników, które nie powinny być publiczne np. raporty.
    • AWS Bucket Public - przechowuje pliki statyczne np. kod CSS/JS,. Zawartość jest publiczna dla wszystkich.
    • AWS Bucket Web - przechowuje skompilowana aplikacje pola-web.
  • pola-bi jest składa się dwóch elementów:

    Kodu w tym repozytorium:

    Obydwa narzędzia są uruchamiane na GitHub Action.

    Do wizualizacji danych wykorzystywany jest Google Looker Studio/Google Data Studio. On łączy się z Google BigQuery.