Skip to content

DeliveBoo is a food delivery platform inspired by the most famous and popular modern platforms on the Web, developed using Vue 3, integrated with a Laravel 10 backend and MySQL. It allows restaurant owners to register their business and manage their menu, while customers can order their favorite dishes.

Notifications You must be signed in to change notification settings

Marcap00/deliveboo-be-v1.0

 
 

Repository files navigation

DeliveBoo - Food Delivery Platform 🍕

Deliveroo Logo DeliveBoo Logo

DeliveBoo è una piattaforma di food delivery ispirata dalle piattaforme mderne più famose e celebri del Web, sviluppata con Vue 3, integrata con un backend Laravel 10 e MySQL. Permette ai ristoratori di registrare la propria attività e gestire il proprio menù, mentre i clienti possono ordinare i loro piatti preferiti.

Vai alla repository frontend DeliveBoo-FE.

📸 Galleria

Tecnologie Utilizzate 🛠

  • Laravel 10.x
  • PHP 8.1+
  • MySQL
  • Vue.js 3
  • Bootstrap 5
  • Sass
  • Braintree (per i pagamenti)
  • FontAwesome
  • Bootstrap Icons

Requisiti di Sistema 📋

  • PHP >= 8.1
  • Composer
  • Node.js e npm
  • MySQL
  • Apache/Nginx

Installazione 🚀

🧾 Requisiti di configurazione

  1. Registrati su Braintree e crea un account di sviluppatore
  2. Recupera le keys fornite da Braintree e inserisci le nel file .env del backend ( BRAINTREE_MERCHANT_ID, BRAINTREE_PUBLIC_KEY, BRAINTREE_PRIVATE_KEY )
  3. Registrati su Mailtrap e crea un account per poter testare la ricezione delle email

⚙️ Backend

  1. Clona il repository
git clone https://github.com/orazi-paolo/deliveboo-laravel10.git
  1. Installa le dipendenze del backend
composer install
  1. Installa le dipendenze del frontend
npm install
  1. Copia il file .env.example e rinominalo in .env
cp .env.example .env
  1. Configura il file .env con le informazioni del tuo database

    • Consigliamo l'utilizzo di MySQL 8.0+
  2. Genera la chiave per l'app Laravel

php artisan key:generate
  1. Esegui le migrazioni per creare le tabelle del database
php artisan migrate
  1. Popola il database con i dati di fake
php artisan db:seed
  1. Crea il link simbolico per lo storage
php artisan storage:link

Avvio dell'Applicazione 🎯

  1. Avvia il server Laravel
php artisan serve
  1. Avvia il server frontend
npm run dev
  1. Apri il browser e vai alla pagina http://localhost:8000

Funzionalità Principali ⭐

Area Ristoratore

  • Registrazione e autenticazione ristoratori
  • Gestione del profilo ristorante
  • CRUD completo per i piatti del menù
  • Visualizzazione ordini e statistiche
  • Dashboard personalizzata

Area Cliente

  • Ricerca ristoranti per tipologia
  • Visualizzazione menù
  • Carrello della spesa
  • Checkout con pagamento online
  • Conferma ordine via email

Struttura del Database 📊

Il database include le seguenti tabelle principali:

  • users (ristoratori)
  • restaurants
  • plates (piatti)
  • orders
  • tipologies (tipologie di cucina)
  • order_plate (tabella pivot)
  • restaurant_tipology (tabella pivot)

API Endpoints 🔌

L'applicazione espone le seguenti API principali:

  • GET /api/restaurants - Lista dei ristoranti
  • GET /api/restaurants/filter - Ricerca ristoranti per tipologia
  • GET /api/restaurants/{slug} - Dettaglio ristorante
  • GET /api/tipologies - Lista delle tipologie di cucina
  • GET /api/plates - Lista dei piatti
  • GET /api/plates/{slug} - Dettaglio piatto
  • POST /api/checkout - Creazione nuovo ordine

Struttura del Progetto 📂

.
├── app
│   ├── Http
│   │   ├── Controllers
│   │   ├── Middleware
│   │   ├── Requests
│   │   └── ...
│   ├── Models
│   └── ...
├── public
│   ├── images
│   └── ...
├── resources
│   ├── js
│   ├── sass
│   └── views
│       ├── layouts
│       ├── admin
│       ├── auth
│       ├── emails
│       ├── partials
│       ├── home.blade.php
│       └── ...
├── routes
│   ├── api.php
│   └── web.php
├── ...

🤝 Contributi

Contribuisci al progetto! Consulta la guida per i contributi per informazioni su come contribuire.

👥 Team di Sviluppo

👨‍💻 @orazi-paolo 👩‍💻@natdm02 👨‍💻@orsoli 👨‍💻@JeromeMaligaya 👨‍💻@Marcap00

📄 Licenza

Questo progetto è rilasciato sotto la licenza MIT License.

Copyright © 2024 DeliveBoo.

Concessione gratuita per utilizzare, copiare, modificare, fondere, pubblicare, distribuire, sublicenziare e/o vendere copie del Software, e per permettere a chiunque altro a farlo, a condizione che il copyright originale e questa dichiarazione di licenza siano inclusi in tutte le copie o parti sostanziali del Software.

IL SOFTWARE È FORNITO "COSÌ COM'È", SENZA GARANZIA DI ALCUN TIPO, ESPRESSA O IMPLICITA, INCLUSE MA NON LIMITATE A GARANZIE DI COMMERCIABILITÀ, IDONEITÀ PER UNO SCOPO PARTICOLARE E NON INFRAZIONE. IN NESSUN CASO IL DETENTORE DEL COPYRIGHT O I CONCESSIONARI SONO RESPONSABILI PER QUALSIASI DANNO O PERDITA, SIA IN UN'AZIONE CONTRATTUALE, ILLECITA O ALTRIMENTI, DERIVANTE DA, O IN CONNESSIONE CON, L'UTILIZZO DEL SOFTWARE.

About

DeliveBoo is a food delivery platform inspired by the most famous and popular modern platforms on the Web, developed using Vue 3, integrated with a Laravel 10 backend and MySQL. It allows restaurant owners to register their business and manage their menu, while customers can order their favorite dishes.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • PHP 53.3%
  • Blade 42.2%
  • JavaScript 2.8%
  • SCSS 1.7%