Skip to content

Integrated Service System for a Nutritionist and Clients – Web Platform and Mobile Application | Spring Boot - Jetpack Compose

License

Notifications You must be signed in to change notification settings

dimitrisstyl7/my-undergraduate-thesis

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Abstract

This thesis aims to implement a service system for nutritionists that facilitates communication with their clients. The system supports the use of a web platform for the nutritionist and a mobile application for clients. The architecture includes a backend server using Spring Boot Framework, which serves both the web platform, and the mobile application developed with the Jetpack Compose toolkit.

Backend Server

The backend server is implemented using the MVC (Model-View-Controller) software architecture pattern. In this project, the Model layer is further divided into sub-layers, such as repositories and services, to better organize different functionalities and database interactions. Additionally, the Controller layer is also further divided into web and api controllers, as the same server also handles RESTful API calls from the Android application.

The relational database management system used is PostgreSQL, which runs in a Docker container. For container creation, the docker-compose.yaml file is used, while the init.sql and seed-data.sql files are used to create the database and populate it with mock data.

Frameworks, tools and libraries:

The following are the core frameworks, tools, and libraries used in the backend server. These represent the essential components, and additional tools may also be utilized.

Implemented Features:

1. View clients

View clients

2. Register a new client

Register a new client

3. Edit client details

Edit client details

4. Delete a client

Delete a client

5. Add client tags

Add client tags

6. Upload, view, download, and delete diet plans for a client

Upload, view, download, and delete diet plans for a client

7. View announcements

View announcements

8. Preview announcement

Preview announcement

9. Edit announcement

Edit announcement

10. Delete announcement

Delete announcement

11. View articles

View articles

12. Preview article

Preview article

13. Preview article tags

Preview article tags

14. Edit article

Edit article

15. Edit article tags

Edit article tags

16. Delete article

Delete article

17. Create a new appointment

Create a new appointment

18. Edit appointment details

Edit appointment details

19. Cancel, decline, approve, or complete an appointment

Cancel, decline, approve, or complete an appointment

Android Application

The Android application is implemented using the Clean Architecture software architecture pattern, which is an improved implementation of MVVM (Model-View-ViewModel) architecture design pattern.

Tools and libraries:

The following tools and libraries are central to the Android application's development. However, there may be additional libraries and tools used in the project that are not explicitly mentioned here.

Implemented Features:

1. Edit personal details

Edit personal details

2. Download diet plans

Download diet plans

3. View appointments

View appointments

4. Request a new appointment

Request a new appointment

5. Cancel an appointment

Cancel an appointment

6. View announcements

View announcements

7. View announcement

View announcement

8. View articles

View articles

9. View article

View article

Acknowledgments

This project was developed as part of my undergraduate thesis in the Department of Informatics at the University of Piraeus. Contributions and feedback are greatly appreciated!

License

This project is licensed under the MIT License - see the LICENSE file for details.