A modern, responsive product catalogue with admin functionality for CRUD operations.
- Clean, modern design with responsive grid layout
- Product cards with images, names, prices, and descriptions
- Click to view detailed product information in modal
- Mobile-friendly responsive design
- Toggle admin mode with a single button
- Create new products with form validation
- Edit existing products inline
- Delete products with confirmation
- Real-time updates without page refresh
- Frontend: React.js with modern CSS
- Backend: Express.js with JSON file storage
- Styling: Pure CSS with modern design principles
-
Install dependencies:
npm run install-all
-
Start development servers:
npm run dev
-
Access the application:
- Frontend: http://localhost:3000
- Backend API: http://jonasarteapi.holmesbooking.com
product-catalogue/
├── backend/
│ ├── server.js # Express API server
│ ├── products.json # Product data storage
│ └── package.json
├── frontend/
│ ├── src/
│ │ ├── App.js # Main React component
│ │ └── App.css # Styling
│ └── package.json
└── package.json # Root package with scripts
GET /api/products- Get all productsGET /api/products/:id- Get single productPOST /api/products- Create new productPUT /api/products/:id- Update productDELETE /api/products/:id- Delete product
- Browse Products: View the product catalogue on the main page
- View Details: Click any product card to see full details
- Admin Mode: Click "Admin Mode" to enable CRUD operations
- Add Products: Use "Add New Product" button in admin mode
- Edit/Delete: Use the buttons on product cards in admin mode