About Expertise Projects Experience Contact
← Back to Projects

Egy Pets

Pet services marketplace (vets, stores, farms, training, adoption) on a Valux Laravel 5.7-style marketplace stack: split route files for JSON catalog under `/api`, authenticated flows under `/api/user`, localized `{lang}/dashboard` admin, and `{lang}/store` vendor tooling—mobile-first with token-based API access and MySQL-backed listings. The original repository is no longer available; this description is reconstructed from that Valux marketplace pattern, not a fresh tree walk. The diagram illustrates that generic five-route layout, not a preserved repo for this brand.

Laravel 5.7PHPMySQLREST APIMobileAdmin Panel

What was broken

Pet owners needed one place to discover trusted providers and listings without juggling disconnected phone trees and ad hoc spreadsheets.

How we fixed it

Applied the standard Valux multi-surface Laravel approach: guest and authenticated API controllers for discovery and accounts, staff dashboards for taxonomy and moderation, and vendor areas for supplier-owned inventory—domain tables differ (pets, services) but routing and auth boundaries match the Valux marketplace template.

What made this hard

Wide service taxonomy (clinical care vs retail vs adoption) without confusing search facets; same long-term constraint as other 5.7 Valux bases—framework EOL means any revival should plan an upgrade path.

How the system is shaped

API Structure

Representative Valux layout: `routes/api.php` for public catalog and content, `routes/user.php` under `api/user` for login or signup and protected user resources, `routes/admin.php` and `routes/store.php` for operators and vendors, `routes/web.php` often minimal when the buyer experience is app-led.

Data Flow

Mobile client reads categories and listings from JSON → authenticated actions persist to MySQL → admins curate or block; vendors update their own product lines through the store portal.

Backend Decisions

Kept the usual Valux separation so pet-specific modules did not collapse into one unguarded controller namespace; token middleware and user status checks stayed server-side like other Valux marketplace deliveries.

Why this stack and shape

Reused the proven Valux route map and middleware conventions rather than inventing a second API stack per client.