🌿 Greenify
Eco-friendly E-commerce Platform (Laravel API + Nuxt Frontend)
📖 About The Project
Greenify is a fullstack e-commerce platform focused on eco-friendly products. It follows an API-first architecture using:
Laravel for the backend Nuxt.js for the frontend
The goal is to build a scalable, secure, and modern shopping experience.
🧱 Tech Stack Backend Laravel (PHP 8.2+) Laravel Sanctum (Auth) PostgreSQL Pest (Testing) Frontend Nuxt 3 Pinia (State Management) TailwindCSS DevOps Docker & Docker Compose ⚙️ Features 🔐 Authentication system (Sanctum) 🛍️ Product catalog with filters & pagination 🛒 Shopping cart management 📦 Order processing & tracking 🛠️ Admin dashboard (CRUD Products & Categories) 🧠 Architecture Highlights Cart vs Order separation Cart → temporary session data Order → permanent records Price Snapshot Pattern Product price is stored at purchase time Prevents future price changes from affecting past orders 🚀 Getting Started Prerequisites Docker Docker Compose Installation git clone https://github.com/aminelebrini/Greenify.git cd Greenify Run with Docker docker compose up -d --build Access Frontend → http://localhost:3000 Backend → http://localhost:8000
Nuxt Proxy export default defineNuxtConfig({ devServer: { proxy: { '/api': { target: 'http://backend:8000' } } } }) 🛠️ Useful Commands
php artisan migrate --seed
php artisan migrate:fresh
php artisan test
php artisan route:list
php artisan optimize:clear 🧪 Testing Unit & Feature tests using Pest Designed for maintainability and reliability 📁 Project Structure greenify/ │ ├── backend/ # Laravel API ├── frontend/ # Nuxt 3 App ├── docker/ # Docker configs └── docker-compose.yml 👨💻 Author
Amine Lebrini Fullstack Developer
🌐 Portfolio: https://amine-lebrini.pages.dev/
📌 Roadmap 💳 Payment integration (Stripe / PayPal) 🔔 Real-time notifications 📱 Mobile app (React Native) 🌍 Multi-language support