All projects

Live · 2025

Souqa

Cross-platform e-commerce app at souqa.ai. I solely built the mobile client and contributed backend work on products, auth, wishlist, discounts, and account deletion.

Sole mobile engineer; backend contributor

  • React Native
  • Products API
  • Auth / OTP
  • Wishlist

Problem

Souqa needed a phone-shaped marketplace client and API changes that the app actually called — discounts, favourites, OTP by email or phone, account deletion — without treating the whole backend as one person’s system.

What I built

  • Owned the React Native app end to end: screens, navigation, and the client against the marketplace API.
  • Contributed backend changes the mobile path depended on: product discounts, wishlist/favourites, OTP identifier, share proxy, and account deletion.

Architecture

flowchart LR
  app[React Native app] --> api[Marketplace API]
  api --> products[Products and discounts]
  api --> auth[Auth and OTP]
  api --> wishlist[Wishlist]

Outcomes

  • A live mobile product at souqa.ai.
  • Backend PRs for discount-value and delete-user-account, plus wishlist, OTP, share, and product-resource fixes recorded in the contribution log.

Mobile (what I owned)

I solely built the Souqa cross-platform mobile app in React Native. The product is an AI e-commerce client: browse, product detail, auth, wishlist, and the rest of a marketplace on a phone.

That is the lead story. I am not claiming store rankings or a user count. The live app is the artifact.

The client talks to a marketplace API I did not own in full. When the app needed a field, an identifier, or a destructive action, I went into the backend and made those paths real.

Backend (what I contributed)

I contributed slightly to the development of the Backend of Souqa App. Commits and PRs I authored or merged (Aug–Dec 2025) include:

  • Product discountsfeat/discount-value (PR #10): discount on the product table, migration, and discount price attribute.
  • Account deletionfeat/delete-user-account (PR #3).
  • Wishlist / favouritesis_favourite on products, wishlist delete by product id, auth-user and model-access cleanups around those paths.
  • OTP — verify-OTP request accepts email or phone as the identifier.
  • Share — endpoint that proxies share functionality through to the app.
  • Product API hygiene — pagination after the product resource, nullable product id and seller email, is_returnable, ratings average (reduce instead of sum), seed images.

No public GitHub link. The backend lives in a private org repo.