{"id":29899259,"url":"https://github.com/stepkos/reservation-app","last_synced_at":"2026-05-15T20:04:57.568Z","repository":{"id":151930894,"uuid":"410946480","full_name":"stepkos/reservation-app","owner":"stepkos","description":"Web Aplication to manage reservations dedicated for clinics","archived":false,"fork":false,"pushed_at":"2022-05-19T17:16:36.000Z","size":22107,"stargazers_count":3,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-08-12T22:36:51.984Z","etag":null,"topics":["laravel","php","team","teamwork","webapp"],"latest_commit_sha":null,"homepage":"","language":"PHP","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/stepkos.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2021-09-27T15:46:02.000Z","updated_at":"2025-01-08T02:37:36.000Z","dependencies_parsed_at":"2023-05-16T15:15:33.551Z","dependency_job_id":null,"html_url":"https://github.com/stepkos/reservation-app","commit_stats":null,"previous_names":["stepkos/reservation-app"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/stepkos/reservation-app","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/stepkos%2Freservation-app","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/stepkos%2Freservation-app/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/stepkos%2Freservation-app/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/stepkos%2Freservation-app/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/stepkos","download_url":"https://codeload.github.com/stepkos/reservation-app/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/stepkos%2Freservation-app/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33078012,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-15T11:35:32.926Z","status":"ssl_error","status_checked_at":"2026-05-15T11:35:31.362Z","response_time":103,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["laravel","php","team","teamwork","webapp"],"created_at":"2025-08-01T12:20:15.396Z","updated_at":"2026-05-15T20:04:57.546Z","avatar_url":"https://github.com/stepkos.png","language":"PHP","funding_links":[],"categories":[],"sub_categories":[],"readme":"## Reservation app\n\n\n\n\u003cbr/\u003e\n\n\n**\u003cp align=\"center\"\u003eApplication built with Laravel for administrating dental offices\u003c/p\u003e**\n\n![Application logo](https://github.com/stepkos/ReservationApp/blob/main/doc/readme/login.png)\n[![forthebadge](https://forthebadge.com/images/badges/built-by-developers.svg)](https://forthebadge.com)\n[![forthebadge](https://forthebadge.com/images/badges/compatibility-ie-6.svg)](https://forthebadge.com)\n[![forthebadge](https://forthebadge.com/images/badges/built-with-love.svg)](https://forthebadge.com)\n\n\n\n## Table of Contents\n* **[Authors](#Authors)**\n* **[Installation](#Installation)**\n* **[Description](#Description)**\n* **[Functionalities](#Functionalities)**\n* **[Database](#Database)**\n* **[Documentation](#Documentation)**\n* **[Licence](#Licence)**\n\n\n## Authors\n\n- Jakub Stępkowski [stepkos](https://github.com/stepkos) : Team Leader, Full-Stack Developer\n- Jan Napieralski [R3VANEK](https://github.com/R3VANEK) : Back-End Developer, Database Engineer\n- Mateusz Sztankiewicz [DΣUS](https://github.com/GodsCrisis) : Front-End Developer\n- Kamil Paczkowski [Avngarde](https://github.com/Avngarde) : Front-End Developer\n\n\n## Installation\n\n### Before you start\n - Install [Composer](https://getcomposer.org/)\n - Install [Mysql](https://www.apachefriends.org/pl/index.html)\n\n\n### Steps\n- Clone repository to your computer\n- Go to xampp phpmyadmin site and hit command ```create database reservationapp```\n- Go to project directory and run in terminal ```composer install```\n- In project locate ```env.example``` clone it, fill with your environment specs and save as ```.env```\n- Run command ```php artisan key:generate```\n- Execute ```php artisan migrate:fresh --seed```\n- For local server to run app enter ```php artisan serve```\n\n\n## Description\n\nThis app was built as an term project for school. It is service handling 3 types of users and their actions :\n- ```patient``` : Views all doctors in database, views his visits and can book new one\n- ```doctor``` : Can view his visits and has special subsite where he can view all details about patient with whom he has right now visit\n- ```reception``` : Views all visits in database, can modify users, cancel visits and change dates of incoming visits\n\n\n## Functionalities\n\n### Login Panel\n![Login Panel](https://github.com/stepkos/ReservationApp/blob/main/doc/readme/login.png)\n\n\n**Features**\n- Working login functionalities\n- Fully secure CSRF token authentication\n- Protection from SQL Injection attacks\n- Redirecting user to appriopriate panel based on user role\n\n\u003cbr/\u003e\n\u003cbr/\u003e\n\n\n### Registration Panel\n![Registration Panel](https://github.com/stepkos/ReservationApp/blob/main/doc/readme/registration.png)\n\n**Features**\n- Working registration functionalities\n- Fully secure CSRF token authentication\n- Protection from SQL Injection attacks\n- Checking input formats\n- Redirecting user to panel \n- New user's role is automatically set to ```patient``` reception stuff can later change that\n- Hashing and salting user password in database\n\n\u003cbr/\u003e\n\u003cbr/\u003e\n\n### Patient main panel\n![Patient main panel](https://github.com/stepkos/ReservationApp/blob/main/doc/readme/patient_main.png)\n\n**Features**\n- User can see here his/hers upcoming visits in dental office in form of compact cards with necessary data\n- On the right there is compact calendar. On it there are marked upcoming visits\n- Log out button\n\n\u003cbr/\u003e\n\u003cbr/\u003e\n\n### Patient all doctor panel\n![Patient all doctor panel](https://github.com/stepkos/ReservationApp/blob/main/doc/readme/patient_doctors.png)\n\n**Features**\n- User can see information about all ```doctor``` users in database in form of compact cards\n- Log out button\n\n\u003cbr/\u003e\n\u003cbr/\u003e\n\n### Patient create visit panel\n![Patient create visit panel](https://github.com/stepkos/ReservationApp/blob/main/doc/readme/patient_visit.png)\n\n**Features**\n- User can book new visit with ```doctor```\n- Select input with real ```doctor``` data\n- Asynchronous viewing selected ```doctor``` work hours \n- Create short note about your health status in textarea input\n- Log out button\n- Validation of given visit date\n    - Checking if entered date is in future\n    - Checking if entered hour matches ```doctor``` work hours in correct day week\n    - Checking if selected ```doctor``` doesn't have visit during entered date and hour\n\n\u003cbr/\u003e\n\u003cbr/\u003e\n\n### Doctor main panel\n![Doctor main panel](https://github.com/stepkos/ReservationApp/blob/main/doc/readme/doctor_main.png)\n\n**Features**\n- User can see here his/hers upcoming visits in dental office in form of compact cards with necessary data\n- On the right there is compact calendar. On it there are marked upcoming visits\n- Log out button\n\n\u003cbr/\u003e\n\u003cbr/\u003e\n\n### Doctor archive panel\n![Doctor archive panel](https://github.com/stepkos/ReservationApp/blob/main/doc/readme/doctor_archive.png)\n\n**Features**\n- User can see here his/hers archive visits with ```patient``` users in form of compact cards\n- On the right there is compact calendar. On it there are marked upcoming visits\n- Log out button\n\n\u003cbr/\u003e\n\u003cbr/\u003e\n\n### Doctor visit panel\n![Doctor visit panel](https://github.com/stepkos/ReservationApp/blob/main/doc/readme/doctor_visit.png)\n\n**Features**\n- This panel is accesible only if ```doctor``` have right now visit with ```patient```\n    - If not it displays information about next upcoming visit\n- ```doctor``` user can see all information about current visit and history of previous ```patient``` visits in dental office\n- ```doctor``` user can add his note to visit\n- Asynchronous timer displaying time left till visit end\n- Log out button\n\n\u003cbr/\u003e\n\u003cbr/\u003e\n\n### Reception main panel\n![Reception main panel](https://github.com/stepkos/ReservationApp/blob/main/doc/readme/reception_main.png)\n\n\n**Features**\n- ```reception``` users see here upcoming visits\n- Upcoming visits can be deleted or ```reception``` users can change date of visit\n- Log out button\n\n\u003cbr/\u003e\n\u003cbr/\u003e\n\n### Reception accounts panel\n\n![Reception accounts panel](https://github.com/stepkos/ReservationApp/blob/main/doc/readme/reception_accounts.png)\n\n**Features**\n- ```reception``` users see here all users in database\n- ```reception``` users can change user roles\n\n\u003cbr/\u003e\n\u003cbr/\u003e\n\n### Reception archive panel\n\n![Reception archive panel](https://github.com/stepkos/ReservationApp/blob/main/doc/readme/reception_archive.png)\n\n**Features**\n- ```reception``` users see here all visits (previous and upcoming) in database\n- Asynchronous filtering visits by :\n    - date\n    - ```doctor``` name\n    - ```patient``` name\n    - visit type\n\n\n\n## Database\n\nThanks to Laravel features, database schema is stored in multiple php files in ```database/migrations``` folder\n- Be sure your XAMPP is running mysql port and you have empty database called ```reservationapp```\n- You can easily import it via command ```php artisan migrate:fresh``` \n- To fill database with random data please use ```php artisan db:seed```\n\u003cbr/\u003e\n\nBelow you can see graphical schema for tables\n\n![Database schema](https://github.com/stepkos/ReservationApp/blob/main/doc/readme/schema.png)\n\n## Documentation\nFull documentation for this project in polish you can find [here](https://github.com/stepkos/ReservationApp/blob/main/doc/ReservationApp.pdf) (Front-End is little out of date)\n\n## License\n\nAll rights reserved\n\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fstepkos%2Freservation-app","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fstepkos%2Freservation-app","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fstepkos%2Freservation-app/lists"}