Giter VIP home page Giter VIP logo

reservatio's Introduction

Reservatio

Application for hairstylists, beauticians and their customers. Online reservations are currently a must-have for every growing business. Reservatio helps in managing the reservations and reaching more people.

Main features:

  • Separate views for customer and service provider
  • Searching for a service provider in preferred location
  • Scheduling and managing appointments
  • Managing employees and services as a service provider
  • Review system
  • Statistics monitoring
  • Responsive for desktop and mobile devices

Authors

  • Agnieszka Ganowicz
  • Paweł Cembaluk
  • Robert Okoński
  • Adrian Urban
  • Roman Buszko
  • Mateusz Gwiżdż

Built with

Screenshots

reservatio's People

Contributors

avapl avatar agngan avatar urbekk avatar matgwi96 avatar rbuszko avatar robokonski avatar

Watchers

 avatar

Forkers

robokonski

reservatio's Issues

Ustawienia security

Dodanie podstawowych zabezpieczeń endpointów za pomocą JWT. Dwie opcje implementacji

  • ustawienie Keycloaka jako osobny serwer dla zabezpieczeń
  • dostosowanie UI pod autentykację
  • walidacja rejestracji

Ustawienie Minio do wrzucania obrazków

  • dodanie kontenera z Minio i odpowiednia jego konfiguracja
  • stworzenie beana w Springu do wrzucania obrazków
  • utworzenie endpointow, które będą przyjmować obrazki

Zrobienie bazy projektu

Do wykonania:

  • bazowy projekt w Springu wraz z potrzebnymi modułami
  • bazowy projekt w React

Makiety do UI

  • zdefiniowanie potrzebnych widoków,
  • projekt widoków.

Ładowanie danych testowych z poziomu kodu

Zaimplementowanie mechanizmu, który z poziomu kodu będzie ładował testowe dane do bazy. Ułatwi to wykonywanie testów i zapobiegnie potrzebie ręcznej edycji SQLa.

Ustawienie podstawowego CI

Do wykonania podstawowy flow CI dla backendu i frontendu, który sprawdza czy projekt się kompiluje przed merge do głównego brancha.

Diagramy UML funkcjonalności aplikacji

Wykonanie diagramów zawierających podstawowe funkcjonalności, które ułatwią projekt bazy danych i implementację w kodzie.

  • diagramy czynności
  • diagramy sekwencji
  • diagramy przypadków użycia

Ustawienie stałych wolumenów dla MySQL, Minio i Keycloaka

Obecnie docker-compose dla infra jak i reservatio startuje za każdym razem z czystego stanu. Powoduje to, że projekt odpala się w sumie około 1,5 minuty. Należy dodać zapisywanie stanu do pliku, aby całość uruchamiała się szybciej.

  • wolumen MySQL
  • wolumen dla Minio
  • wolumen dla Keycloaka (o ile jest potrzebny, potencjalnie MySQL powinno wystarczyć w tym przypadku)
  • przestawienie Hibernate w inny tryb niż create-drop (do przemyślenia jaki)
  • stworzenie skryptu do czyszczenia zapisanych wolumenów

Implementacja UI

  • widok rejestracji i logowania #20
  • pasek nawigacji wraz z routingem #21

Perspektywa użytkownika:

  • widoki Explore, Search, Favourites #22
  • widok Appointments #23
  • widok szczegółów salonu (informacje, opinie) #24
  • widok rezerwacji #25

Perspektywa usługodawcy:

  • widok Statistics
  • widok Employees (trzeba go też dodać do makiet, bo nie powstał)
  • widok rezerwacji (trzeba go też dodać do makiet i navbara)
  • widok Services
  • widok Profile

Makiety dla użytkownika:
Dekstop - https://app.moqups.com/QuYnmGUEhD/view/page/ad64222d5
Mobilne - https://app.moqups.com/2zhmYhZBCA/view/page/ae8fe8eb0

Makiety dla usługodawcy:
Dekstop - https://app.moqups.com/z4ZpUfI3Lh/view/page/ad64222d5
Mobilne - https://app.moqups.com/1h99I7rnrH/view/page/ae8fe8eb0

Refactor EmployeeController i ServiceController

Obecnie metody w tych klasach są dość rozrośnięte. Przydałoby się poprawić czytelność kodu w tych klasach. Prócz tego proponuję poprawę endpointów, bo te obecne nie do końca są zgodne z REST. Przykładowo dla EmployeeController powinno raczej być:

  • POST /serviceProvider/{serviceProviderId}/employees - dodanie pracownika
  • PUT /serviceProvider/{serviceProviderId}/employees/{employeeId} - edycja pracownika
  • DELETE /serviceProvider/{serviceProviderId}/employees/{employeeId} - usunięcie pracownika

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.