// a streaming platform for the Kurdish & Arabic world
Press play on a whole city’s sound —the songs it grew up on,in the language it dreams in.
Visit Maqam- Backend & API Engineering
- Product Strategy & Lead
- Payments & Subscriptions
// the brief
Built for an audience the big platforms skipped.
Kurdish and Arabic listeners have been an afterthought for the global streaming services — patchy catalogues, no real localisation, and no sense of the local music scene. Maqam set out to fix that: a proper music product for this audience, with a catalogue that lives in their languages.
It's a full product — native iOS and Android apps backed by a single Laravel API, plus a Livewire back-office for running the catalogue and the business. I built the backend and API, led product direction, and owned the payments and subscription layer end to end. The apps' interface is the team's design; the platform underneath — the tri-lingual catalogue, the per-locale search, the multi-store billing — is mine.
// discovery
A whole listening experience, end to end.
Home, player, artist, library — every surface feeds from the same Laravel API. The app's interface is the team's design; the catalogue, recommendations, and playback data behind it are the platform I built.
// one catalogue, three languages
- 3content languages · en / ar / ckb
- 3payment rails reconciled
- 2right-to-left locales
- 11translatable models
- 5Algolia-indexed per locale
- 3plan tiers
- 7day free trial
- ~54API endpoints
- 44migrations
// under the hood
One API, feeding two apps and a back-office.
A modern Laravel API designed to feed native apps fast, search well in three languages, and reconcile money across three app stores.
- // api.laravel
Laravel 12 API
A versioned, Sanctum-secured REST API split into auth, home, my-music, onboarding, and subscription domains — the single source of truth for both the iOS and Android apps.
- // search.algolia
Per-locale search
Laravel Scout + Algolia index titles, artists, and albums per locale (en / ar / ckb), backed by Spatie Translatable so the catalogue is genuinely tri-lingual — not just the UI chrome.
- // media.s3
Media on S3
Audio and artwork are delivered from S3 via Spatie MediaLibrary, with derived URLs served to the apps and a scope that only ever serves active songs that actually have audio attached.
- // auth
Auth your way
Sign in by email, by phone with OTP over Twilio, or with Apple and Google social login — whatever fits the listener and the device.
- // admin.livewire
Catalogue back-office
A Livewire admin runs the catalogue — artists, albums, songs, playlists, genres and moods — with roles and permissions, plus bulk import from Excel and Google Sheets to onboard a large library quickly.
- // engagement
Push & engagement
OneSignal delivers push notifications for new releases and re-engagement, while play tracking feeds the trending, viral, and daily-recommendation surfaces.
// payments — the hard part is the money
Three storefronts, one truth.
A subscription can begin in the App Store, on Google Play, or through Stripe. I built the billing layer to reconcile all three providers’ webhooks into one consistent subscription state — idempotent and audited — so a listener’s access is correct no matter where they paid.
// audited webhook event types — idempotent, logged
- Apple
INITIAL_BUYDID_RENEWDID_CHANGE_RENEWAL_STATUS - Google Play
SUBSCRIPTION_PURCHASEDSUBSCRIPTION_RENEWED - Stripe
customer.subscription.updatedinvoice.paid
// outcomes, honestly
A platform built to grow past launch.
Maqam gives Kurdish and Arabic listeners a music product built for them rather than ported to them — a tri-lingual catalogue, search that works in all three languages, offline downloads, and premium plans that work on any store. Every figure here is code-derived — the shape of the platform, never a listener's data.
- 21
- Eloquent models
- 44
- migrations
- ~54
- API endpoints
- 2
- taxonomy dimensions
- Laravel 12 API
- Sanctum
- Livewire admin
- Scout · Algolia
- spatie · Translatable / MediaLibrary / Permission
- Cashier · Stripe
- Apple · Google Play billing
- S3
- Twilio · OneSignal




