Hammam "Dile" Al Natsha AI & Robotics Engineering · Arab American University of Palestine
curiosity → creation → reality
A portfolio that behaves like software rather than a page. A live Three.js scene renders the content, a companion robot reacts while you read, and a status bar tracks your position in real time.
No framework. No bundler. No build step.
focus Reinforcement Learning
building RL-Scientist
learning Distributed Systems
location Palestine
The middle ground between research and software engineering.
AAUP Academic Planner — live · source Academic planning platform. Prerequisites, progress tracking, full RTL support.
Construction & Trades — source Offline-first work management for real-world crews.
RL-Scientist — source A local LLM that proposes and evaluates its own reinforcement learning experiments.
Listing Lab Local-first AI for generating marketplace product listings.
AIMaze Unity ML-Agents environment where a PPO agent learns to solve mazes.
languages Python · C++ · JavaScript · SQL
frameworks FastAPI · Android · PostgreSQL · Unity
ai / data Reinforcement Learning · Machine Learning · Ollama · pipelines
other REST API design · responsive web · Git · Linux
A dynamic 3D scene over a pastel palette. A companion robot that follows the cursor, blinks, sleeps and reacts. Project modals with live animated mockups. A lab playground running simulated code and output per skill category. Scroll-driven reveals, sparkles, ripples, ambient motion.
Screen-reader text sits behind every 3D-rendered section, so the page stays readable without the canvas.
P photo mode
dile · hammam type anywhere
markup HTML + CSS, vanilla
3d Three.js r160, importmap via CDN
motion GSAP 3 + ScrollTrigger
scripts ES modules, hand-rolled
hosting GitHub Pages, static
index.html markup + metadata
scene.js Three.js scene, stage slots, companion robot
script.js nav, scroll state, status bar, contact
lab.js lab playground simulations
mockups.js animated project mockups
style.css base
polish.css motion + detail
stage.css stage-slot layout
python -m http.server 8000Then open http://localhost:8000. Opening index.html directly works too, unless
your browser blocks ES modules over file://.
jo0dile.github.io · @jo0dile · a.natsha1@student.aaup.edu
© 2026 Hammam Al Natsha · Palestine