RetroTech is a Laravel-based admin system for managing retro gaming consoles.
The application simulates a simple webshop admin panel where products and brands can be created, edited, filtered and deleted.
This project was built as part of a Laravel course assignment to practice building a CRUD application using a framework.
Category: Electronics
- Login / logout with authentication
- Dashboard with greeting and product overview
- Full CRUD for products
- Full CRUD for brands
- Filter by brand and condition
- Sort by price and time of creation
- Pagination with filters preserved
- Confirm delete page to prevent accidental deletion
- Accessible alerts
- Custom error pages (404 and 500)
Email: admin@retrotech.se
Password: 123
Products can be filtered by brand and condition, and the filters can be combined.
10 products per page on dashboard and 15 per page on products page.
The project uses factories and seeders so the application looks the same on every machine.
Brands: Nintendo, Sony, Microsoft, Sega, Atari
Conditions: New, Like New, Good, Acceptable, For Parts
Products are generated with ProductFactory using realistic retro console names such as Nintendo Switch, PlayStation 3, Sega Dreamcast and Xbox 360.
- Semantic HTML elements throughout
- All form inputs have associated labels
- Validation errors are clearly displayed
- Alerts use
role="alert"andaria-livefor screen reader support - Color contrast meets readability standards
- Layout works correctly when zooming in and out
Custom pages for 404 and 500 errors, both with a link back to the previous page.
- PHP 8.2 / Laravel 12
- Blade templates
- CSS / JavaScript
git clone https://github.com/BAlmroth/retrotechcd retrotechcomposer installnpm installcp .env.example .env- Create the MySQL database. Open your terminal and start MySQL:
mysql -u root -p
Press Enter, then type your MySQL password. If you do not have a password, just press Enter.
- When you are inside MySQL, create the database:
CREATE DATABASE retrotech; - Then exit MySQL:
exit php artisan key:generatephp artisan migratephp artisan db:seedphp artisan serve
Open in browser: http://localhost:8000 (or http://localhost:8001 if 8000 is occupied)
Login mail: admin@retrotech.se password: 123
Benita Almroth & Wilma Reistad