/GluCare

Diabetes Management System, your dedicated companion in managing diabetes with precision and ease.

Primary LanguagePHP

Diabetes Management System

The Diabetes Management System is designed to address the specific needs and challenges faced by individuals living with diabetes. It offers a range of features that cater to various aspects of diabetes management, including detection of diabetes, meal planning, exercise tracking, and personalized health insights. By incorporating these features into a single platform, the system aims to streamline the management process and enhance the quality of life for individuals with diabetes. Additionally, the application has its own dedicated extensive API, which requires authentication using Laravel Sanctum package.

Features

Authentication and Authorization:

  • User registration, login, and social login integration (Google & Facebook).
  • Forgot password and password reset functionalities.

Email Verification:

  • Send, check, and resend email verification codes.

User Profile Management:

  • View and update user profiles.

Notifications:

  • Manage user notifications, mark as read, and delete.

Admin Dashboard:

  • Role and permissions management.
  • User management (CRUD operations).
  • Website settings management.

GluCare Application:

  • Blog management (categories, posts, comments, likes).
  • Appointments management (CRUD, approval).
  • Doctor management (view details).
  • Dietary recommendations (foods, ratings).
  • Activity recommendations (activities, ratings).
  • Patient data management (CRUD operations, health readings).
  • Chat functionality (real-time messaging).
  • Payment integration (Stripe).

API Integration:

  • Third-party API integration for social login (Google & Facebook).

Screenshots:

Home Page:

Home Page

Diabetes Detection Page:

detection

Dietary Recommendations Page:

Dietary Recommendation

Activity Recommendations Page:

activity Recommendation

Blog Page:

Blog

Live Chat Page:

LiveChat

Chatbot Page:

Chatbot

Appointment Page:

Appointment

Reports Page:

reports

Admin Panel:

Admin Dashboard

Doctor Panel:

Doctor Dashboard

Employee Panel:

Employee Dashboard

Application

1- GluCare: The public-facing website can be accessed at http://127.0.0.1:8000/api/glucare This is where users/patients can interact with the website in general.

2- Admin Panel: The Admin Panel for managing the application is available at http://127.0.0.1:8000/api/dashboard/admin secure area is exclusively accessible to authorized administrators where only authenticated admin, doctors, and employees can access. It grants access to the administrative functionalities of the application, such as adding new features, users management, creating and editing website settings, etc.

Application Routes and API Endpoints:

All application routes & API endpoints are defined in the api.php file (API Endpoints).

API Endpoints:

** Check the application API Collection on my Postman Profile: https://documenter.getpostman.com/view/30369130/2sA3JM726Z

** Also, you can test the API Endpoints yourself using Postman. Here is the API's Postman Collection .json file API Postman Collection file that you can download and import into your Postman.

Installation & Configuration:

1- Open your terminal, and use the 'git clone https://github.com/emanebied/GluCare.git' command, or just download the ZIP project.

2- Navigate/Change into (using the cd command) to the project root directory, then run the 'composer install' command.

4- Create a MySQL database named `glucare`, then import the glucare database SQL Dump File into your `glucare` database.

5- Navigate to the .env file and configure/update it with your MySQL database credentials and other configuration settings.

6- Run the 'php artisan serve' command, and then open your browser and visit http://127.0.0.1:8000

** Ready-to-use registered accounts credentials you can use to log in:

  1. admin (to access the Admin Panel): Email: admin@gmail.com, Password: admin@1234
  1. doctor (to access the Doctor Panel): Email: doctor@gmail.com, Password: doctor@1234
  1. employee (to access the Employee Panel): Email: employee@gmail.com, Password: employee@1234
  1. user (to access the Website): Email: eman@gmail.com, Password: eman@1234

Contribution:

Contributions to my GluCare Laravel application are most welcome! If you find any issues or have suggestions for improvements or want to add new features, please open an issue or submit a pull request.