0%
Getting things ready
Open for new projects — say hi

FULLSTACK DEVELOPER

I build websites and bots that feel fast and look modern — clean front-end design sitting on solid back-end logic.

01Manifesto

I build both ends of the web — the interface people touch and the backend that holds it up. Every project starts as a problem to solve and ends as a site that loads fast, stays responsive on any screen, and feels good to use. Clean structure and good motion aren't opposites; the craft is getting them to agree.

0
Years writing code
0
Projects shipped
0
Recurring clients
0
Technologies used
02Capabilities

What I work with

/ 01

Frontend Architecture

HTML, TailwindCSS and JavaScript as the base, React and Next.js when a project grows — component structure that still reads clearly months later.

  • HTML
  • TailwindCSS
  • JavaScript
  • React
  • Next.js
/ 02

Backend & APIs

Node.js and Express.js services with REST APIs that are simple to call and hard to break — including Discord bots built on discord.js.

  • Node.js
  • Express.js
  • REST APIs
  • discord.js
/ 03

Databases

MongoDB when the shape of the data keeps moving, MySQL when it needs strict relations. The schema gets planned before the first query.

  • MongoDB
  • MySQL
/ 04

Tooling & Deployment

Git for a history that makes sense, Linux on the server side, JSON-driven content, and shipping to GitHub Pages or a custom domain.

  • Git
  • Linux
  • JSON
  • GitHub Pages
/ 05

Motion & Experience

GSAP timelines, Canvas backgrounds and CSS animations — motion used to guide attention, never to show off.

  • GSAP
  • Three.js
  • Canvas
  • CSS Animations
03The Engine

BUILT TO LAST

A site isn't finished the day it goes live. I keep the code simple enough that the next change — mine or someone else's — is a small job instead of a rewrite.

04Selected Work

Things I built

Screenshot of the Cashy point-of-sale website
01POS System2026

Cashy

An Arabic point-of-sale system for Windows that runs fully offline — Electron with an embedded NestJS API over SQLite, plus an optional cloud platform for licensing and remote monitoring.

  • Electron
  • NestJS
  • Next.js
  • Prisma
  • SQLite
  • PostgreSQL
  • Docker
Visit Site
Screenshot of the Ordery restaurant platform website
02Restaurant SaaS2026

Ordery

A multi-tenant SaaS platform for restaurants and cafés — cashier, kitchen and delivery in one system. A TypeScript monorepo on NestJS, Next.js, PostgreSQL and Redis; the landing site is live while the platform is being built.

  • TypeScript
  • NestJS
  • Next.js
  • PostgreSQL
  • Redis
  • Turborepo
Coming soon
Screenshot of the Basit to-do app website
03Web App2026

Basit — To-do

A collaborative to-do app built to stay out of your way: no upsell banners, no notification bell, no productivity score. Next.js 15 and React 19 on Prisma and PostgreSQL, Arabic-first with full RTL.

  • Next.js
  • React
  • TypeScript
  • Prisma
  • PostgreSQL
  • Auth.js
  • Tailwind
Visit Site
Screenshot of the ANUBIS Jewelry storefront
04Jewelry ERP & Commerce2026

ANUBIS Jewelry

An ERP and an online store for a jewellery house in a single monorepo — point of sale, manufacturing orders, live pricing tied to the metal rate, delivery tracking and a customer storefront. NestJS and Prisma behind Next.js 15, realtime over Socket.IO and Redis, with Capacitor shells for the staff and customer apps.

  • NestJS
  • Next.js
  • Prisma
  • PostgreSQL
  • Redis
  • Socket.IO
  • Capacitor
Visit Site
05Process

How a site gets built

Five steps, the same every time — the boring part is what makes the fun part work.

01

Understand

What the site is for, who opens it, and what counts as done. That gets written down before anything else.

02

Design

Layout, type and colour, and the path a visitor takes from the first screen to the button that matters.

03

Build

Section by section in clean HTML, CSS and JavaScript — motion comes last, so it serves the content instead of hiding it.

04

Test & Adapt

Phone, tablet, desktop. Slow connections, real content, and every link clicked at least once.

05

Launch & Support

Domain pointed, site live, then the small fixes and updates that keep it useful long after launch day.

06Contact

GOT AN IDEA? LET'S BUILD IT

Hey there! Feel free to reach out any time — I'm always happy to chat, help out, or build something with you.