Skip to content
Back to work

2026Full-stack

DzArtisan

A marketplace connecting households with tradespeople in Algeria, built with one project partner. One API serves the public site, the client and tradesperson dashboards, and the admin back office.

Context
Final-year project, built with one teammate. Finding a qualified tradesperson in Algeria still runs on word of mouth: no reliable directory, no record of past jobs, no recourse when something goes wrong.
Problem
A marketplace is not a directory. Three roles with different permissions have to coexist, disputes need arbitration, subscriptions need billing, and everyone has to stay in sync in real time, over uneven connections and devices.
Approach
My project partner built the Laravel API, with Sanctum tokens and two-factor on admin. I built everything on the other side of it: the public site, the client and tradesperson dashboards and the admin back office, all in Next.js against that API. Geographic search by wilaya and commune, an availability calendar, priced proposals, complaint handling, and real-time messaging consumed over WebSockets.
Outcome
180 files and around 28,000 lines of front-end code: 44 routes and 100 components covering the path from a first service request through to subscription payment and dispute. The interface ships in French and Arabic with full right-to-left layout.
My role
The whole front end, from design to delivery. My project partner wrote the Laravel API.
Stack
  • Next.js 16
  • React
  • Tailwind CSS
  • Laravel 12
  • MySQL

Private code. Repository available on request.

Live