Skip to content

Projekt na bazy danych delta szwadronu super cool komando wilków alfa

License

Notifications You must be signed in to change notification settings

wojtazk/dazy-banych

Repository files navigation

Dazy Banych - NaszaOświata

Piosenka o Delta Szwadronie Super Cool Komando Wilków Alpha


Projekt na bazy danych delta szwadronu super cool komando wilków alfa.

Aplikacja webowa do wyszukiwania oraz oceniania placówek oświatowch, umożliwiająca również publikację komentarzy i ogłoszeń na stronach placówek.

Drużyna pierścienia

Datasety

Otwarte Dane zrzut ekranu

Klonowanie repozytorium

git clone https://github.com/wojtazk/dazy-banych.git
cd dazy-banych

Budowanie i Pierwsze uruchomienie serwisu

Note

Do zbudowania i uruchomienia serwisu potrzebny jest Docker i Docker Compose

Note

Podczas budowania frontend wymaga dostępu do bazy danych i backendu

docker-compose up -d --build postgres backend

Important

Poczekaj z budową obrazu frontendu do czasu gdy backend i postgres się podniosą

docker-compose build frontend
docker-compose up

Uruchamianie serwisu

docker-compose up

Przejdż do serwisu (http://localhost:80 / http://127.0.0.1:80)

open http://localhost:80

Uruchamianie serwisu zrzut ekranu

Baza danych - Postgres

Uruchamianie samej bazy danych (development):

docker-compose up postgres 

Informacje

  • port: 5432
ENV POSTGRES_USER="admin"
ENV POSTGRES_PASSWORD="admin"
ENV POSTGRES_DB="nasza_oswiata"

naszaOswiata.sql i load_data.sql to początkowe skrypty inicjalizujące strukturę bazy danych oraz wczytujące dane do tabel z plików csv

Zarządzanie bazą - pgAdmin

Uruchamianie samego pgAdmina (development):

docker-compose up pgadmin 

Informacje

  • port: 8080
  • użytkownik: [email protected]
  • hasło: admin
  • hasło do połaczenia z bazą: admin
ENV PGADMIN_DEFAULT_EMAIL="[email protected]"
ENV PGADMIN_DEFAULT_PASSWORD="admin"
ENV PGADMIN_LISTEN_PORT="8080"

Screenshot_20250105_221713

Note

Można dodać id jakiegoś użytkownika do tabeli admini_szkoły, co pozwoli mu na dodawanie ogłoszeń do danej placówki

INSERT INTO admini_szkoly VALUES (<user_id>, <placowka_rspo>);

Backend - Flask

Uruchamianie samego backendu (development):

pip install -r ./backend/requirements.txt
python ./backend/app.py 

Informacje

  • port: 5000

backend.Dockerfile

ENV PORT="5000"
ENV DB_HOST="postgres"

app.py

# [...]

# database con settings
DB_HOST = os.getenv("DB_HOST", "localhost")
DB_PORT = int(os.getenv("DB_PORT", 5432))
DB_NAME = os.getenv("DB_NAME", "nasza_oswiata")
DB_USER = os.getenv("DB_USER", "kot_backendu")
DB_PASSWORD = os.getenv("DB_PASSWORD", "kot_backendu")

# [...]

if __name__ == "__main__":
    # run the app
    app.run(debug=False, host="0.0.0.0", port=int(os.getenv("PORT", 5000)))

Frontend - Next.js

Uruchamianie samego frontendu (development):

npm install
npm run dev

Informacje

  • port: 80
  • port development: 3000

frontend.Dockerfile

ENV NODE_ENV="production"
ENV PORT="3000"
ENV BACKEND_URL="http://backend:5000"

next.config.mjs

/** @type {import('next').NextConfig} */
const nextConfig = {
    async rewrites() {  // proxy for backend server
        return [
          {
            source: '/proxy/:path*',
            destination: `${process.env.BACKEND_URL || 'http://192.168.0.136:5000'}/:path*`,
          },
        ];
      },
};

export default nextConfig;

Obrazy w awatarze użytkownika są pobierane z https://picsum.photos/

Wyszukiwarka Wyszukiwarka - filtry Rejestracja Logowanie Strona placówki Dodawanie ogłoszenia Ogłoszenia Opinie Dodaj opinie Użytkownik popover Strona użytkownika Modal

not-found.js Strona not-found pobiera kotki z https://cataas.com

Darkmode

About

Projekt na bazy danych delta szwadronu super cool komando wilków alfa

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published