composer create-project --prefer-dist laravel/laravel wino-modo cd wino-modo php artisan serve DB_CONNECTION=mysql DB_HOST=127.0.0.1 DB_PORT=3306 DB_DATABASE=winomodo DB_USERNAME=root DB_PASSWORD= CREATE DATABASE winomodo; php artisan make:model Product -m public function up() { Schema::create('products', function (Blueprint $table) { $table->id(); $table->string('name'); $table->text('description'); $table->decimal('price', 8, 2); $table->integer('stock'); $table->timestamps(); }); } php artisan migrate php artisan make:controller ProductController namespace App\Http\Controllers; use App\Models\Product; use Illuminate\Http\Request; class ProductController extends Controller { public function index() { return response()->json(Product::all()); } public function store(Request $request) { $product = Product::create([ 'name' => $request->name, 'description' => $request->description, 'price' => $request->price, 'stock' => $request->stock ]); return response()->json($product, 201); } } Route::get('products', [ProductController::class, 'index']); Route::post('products', [ProductController::class, 'store']); npx create-react-app wino-modo-client cd wino-modo-client npm start npm install axios const addProduct = (newProduct) => { axios.post('http://localhost:8000/api/products', newProduct) .then(response => { console.log(response.data); setProducts([...products, response.data]); }) .catch(error => console.error(error)); };
التوصيل بالمجان والدفع عند الاستلام