Skip to content
This repository has been archived by the owner on Apr 23, 2023. It is now read-only.

EP-coode/ZPI

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Student Society

Opis

Aplikacja webowa pozwalająca użytkownika na wymianę treści oraz ich wyszukiwanie na podstawie predefiniowanych przez moderatorów kategorii oraz tworzonych przez użytkowników tagów. Publikowane treści mogą zawierać multimedia tj. zdjęcia, a treść tekstową można edytować w "bogaty" sposób (docelowo markdown).

Użytkownicy

  • gość
  • moderator
  • Student/Użytkownik zalogowany

Wymagania funkcjonalne

  • Użytkownik może utworzyć konto
  • Użytkownik może zweryfikować swoje konto w celu dostępu do większej ilości akcji w portalu
  • Użytkownik może edytować dane swojego konta
  • Zalogowany użytkownik może dodawać posty składające się z maksymalnie jednego obrazu i tekstu.
  • Użytkownik tworzący post może do niego dodać odpowiednie tagi pomagające w jego wyszukiwaniu
  • Strona posiada predefiniowane kategorie np. („W4”, „Humor”). Które będą widoczne z poziomu strony głównej.
  • Użytkownik może przeglądać posty. Filtrować je na podstawie targów, kategorii, i czasu dodania. Sortować na podstawie polubieni i czasu dodania
  • Każdy post może być „plusowany” bądź „minusowany” przez zalogowanego użytkownika co będzie wpływało na jego pozycjonowanie w połączeniu z czasem
  • Zalogowany użytkownik może dodawać komentarze do każdego postu
  • Użytkownik może wyszukiwać posty za pomocą frazy (opcjonalne)
  • Moderator może blokować określone posty
  • Moderator może nakładać blokady czasowe na określonych użytkowników.
  • Możliwość wyboru motywów kolorystycznych dark i light

Diagram aktywności

driagram aktywności

Pomocniczy model danych

DB schema

Architektura

DB schema

Technologie

  • React
  • Next.js
  • TailwindCSS
  • DaisyUI
  • Java
  • Spring, Sbring Boot, Spring Security
  • JWT
  • Hibernate
  • MySQL, SQL
  • Azure Blob Storage
  • Hosting Vercel, Azure
  • Docker

Uruchomienie loklane

  1. Instalacja Docker (https://docs.docker.com/desktop/install/linux-install/)
  2. W pliku docker-compose.yaml znajdującym się w folderze głównym aplikacji wprowadzamy odpwiednie wartości dla:
    • AZURE_BLOB_ACCOUNT_KEY - klucz do konta Azure Blob
    • AZURE_BLOB_ACCOUNT_NAME - nazwa konta Azure blob
    • AZURE_BLOB_CONTAINER - nazwa konterera na multimedia
    • AZURE_BLOB_ENDPOINT - endpint serwisu Azure Blob
    • MYSQL_HOST - adres hosta bazy MySQL
    • DB_NAME - nazwa bazy danych
    • DB_PASS - hasło bazy danych
    • DB_USER - urzytkownik bazy danych
    • GMAIL_USER GMAIL_PASS - konto pocztowe używane do mailingu
    • JWT_KEY - klucz prywatny używany do tworzenia tokenów JWT
    • AUTH_SERVICE_URL; DATA_PROVIDER_URL - adres hosta aplikacji backendowej (lokanie nic nie trzeba zmieniać)
  3. Zbudowanie dockerowych obrazów oraz uruchomienie
# budowanie obrazu
docker compose build
# uruchomienie
docker compose up -d
  1. Domyśle parametry uruchamiają aplikację frontendowom na adresie localhost:3000

Widoki

Desktop

  • Widok główny (różne motywy) main view main view main view

  • Widok przeszukiwania kategorii postów article search

  • Widok postu article

  • Widok komentarzy postu article

  • Logowanie login

  • Register login

  • Tworzenie postow article creation article creation

  • Profil urzytkownika profile

Przykład responsywnosci mobile

profile profile

About

Social app for students

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •  

Languages