Skip to content

Hotel Booking web application built for the purpose of fulfilling the UECS3294 Advanced Web Application Development requirements.

Notifications You must be signed in to change notification settings

Vignnesh07/Hotel-Booking

Repository files navigation

Laravel Logo

Build Status Total Downloads Latest Stable Version License

Hotel Booking Assignment (Laravel)

Overview

The purpose of this assignment is to demonstrate:

  1. Ability to build an interactive and database-driven web applications using a laravel framework
  2. The implementation of the model-view-controller (MVC) software architecture.
  3. Working with the Laravel routes, controllers, SQL database (for CRUD operations) and models.
  4. Storing and manipulating Laravel states.
  5. Building a web application with user authentication and authorization using cookies, session and role-based access control (RBAC).
  6. The implementation of User authorization using gates or policies.
  7. HTML and CSS ability.
  8. Persistance storage knowledge.
  9. Performing operations using model (Eloquent ORM) approach.

About Laravel

Laravel is a web application framework with expressive, elegant syntax. We believe development must be an enjoyable and creative experience to be truly fulfilling. Laravel takes the pain out of development by easing common tasks used in many web projects, such as:

Laravel is accessible, powerful, and provides tools required for large, robust applications.

Learning Laravel

Laravel has the most extensive and thorough documentation and video tutorial library of all modern web application frameworks, making it a breeze to get started with the framework.

You may also try the Laravel Bootcamp, where you will be guided through building a modern Laravel application from scratch.

If you don't feel like reading, Laracasts can help. Laracasts contains over 2000 video tutorials on a range of topics including Laravel, modern PHP, unit testing, and JavaScript. Boost your skills by digging into our comprehensive video library.

Prerequisites

In order to run the provided solution the following software will need to be installed:

  • A code editor (We recommend VS Code here.).
  • A web browser (We recommend Google Chrome here.).

Setup

  1. Fork and clone the repository.
  2. Open the repository folder and install the dependencies using composer install.
  3. Rename .env.example to .env file and setup database configurations.
  4. Run php artisan migrate to create MySQL database.
  5. Run php artisan db:seed --class=AuthSeeder, php artisan db:seed --class=BookingSeeder, and php artisan db:seed --class=ComplaintSeeder to populate MySQL database.
  6. Run the development server using php artisan serve.
  7. Create a new branch (based on your function name) before making changes.
  8. To use admin or clerk accounts, login using their respective credentials in AuthSeeder file in database/seeders/AuthSeeder.php. ​ The repository contains a resources directory inside the root folder with scripts and view files; this should be the starting point for the application. Please feel free to create more views to structure the app in a logical manner.

License

The Laravel framework is open-sourced software licensed under the MIT license.

Laravel CLI Commands

  • php artisan serve = Starts development server
  • php artisan make:migration create_test_table = Generates automated script to create a database table
  • php artisan migrate --path=path/to/migration/file = Runs automated script to create database table
  • php artisan make:seeder TestSeeder = Generates automated script for data seeding
  • php artisan db:seed --class=TestSeeder = Runs automated script to seed database table

Conclusion

This project was built for the purpose of fulfilling the UECS3294 Advanced Web Application Development requirements. Contributions are welcomed :)

About

Hotel Booking web application built for the purpose of fulfilling the UECS3294 Advanced Web Application Development requirements.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published