This is a web-based pizza ordering application built with Laravel, featuring a user-friendly interface for customers to browse and order pizzas online. The application includes user authentication, a product catalog with various pizza options, shopping cart functionality, and order processing capabilities.
- User Authentication: Register, login, and profile management using Laravel Breeze
- Product Catalog: Browse different pizza varieties with images, descriptions, and prices
- Shopping Cart: Add pizzas to cart, modify quantities, and proceed to checkout
- Order Management: Track order status and history
- Responsive Design: Mobile-friendly interface using TailwindCSS
- Backend: PHP 8.x, Laravel 10.x
- Frontend: HTML, CSS, JavaScript, AlpineJS
- CSS Framework: TailwindCSS
- Build Tool: Vite
- Database: MySQL/PostgreSQL
- Authentication: Laravel Breeze
- API Integration: Laravel Socialite for social login options
- PHP 8.0 or higher
- Composer
- Node.js and NPM
- MySQL or PostgreSQL database
- Git
-
Clone the repository:
git clone https://github.com/yourusername/Project-Web-Dev-main-ELECTIVE-.git cd Project-Web-Dev-main-ELECTIVE- -
Install dependencies:
composer install npm install
-
Copy the environment file:
cp .env.example .env
-
Generate the application key:
php artisan key:generate
-
Configure your database connection
Edit the.envfile and set your database credentials:DB_CONNECTION=mysql DB_HOST=127.0.0.1 DB_PORT=3306 DB_DATABASE=your_database_name DB_USERNAME=your_database_username DB_PASSWORD=your_database_password -
Run database migrations:
php artisan migrate
-
Build frontend assets:
npm run build
-
Start the Laravel development server:
php artisan serve
-
In a separate terminal, run the Vite development server:
npm run dev
-
Access the application:
Open http://localhost:8000 in your browser.
-
Build the assets for production:
npm run build
-
Configure your web server (Apache/Nginx) to point to the
publicdirectory.
app/- Core application codeHttp/Controllers/- Controllers (includingFrontPageController)Models/- Database models
database/- Migrations and seederspublic/- Public files (images, entry point)resources/- Frontend assetsviews/- Blade templatescss/- CSS filesjs/- JavaScript files
routes/- Application routesconfig/- Configuration files
The application features a variety of pizzas including:
- Pepperoni Pizza
- Cheese Pizza
- Hawaiian Pizza
- Meat Pizza
- Overload Cheese Pizza
Each pizza comes with a detailed description and price information.
The application uses Laravel's built-in authentication system with Laravel Breeze. Users can:
- Register a new account
- Login with email and password
- Reset password
- Update profile information
- Browse the pizza menu on the homepage
- Add desired pizzas to the cart
- Review cart items and adjust quantities if needed
- Proceed to checkout
- Complete the order by providing delivery information
- Track order status
- Fork the repository
- Create a feature branch:
git checkout -b feature-name
- Commit your changes:
git commit -m 'Add some feature' - Push to the branch:
git push origin feature-name
- Submit a pull request
This project is open-sourced software licensed under the MIT license.
This README.md provides a comprehensive overview of the pizza ordering web application, including its features, technology stack, installation instructions, and usage guidelines. The content is based on the code snippets and repository information provided, particularly focusing on the pizza menu items from the FrontPageController and the Laravel configuration details from the various files.