$ loading▍
$ loading▍
// work/
A running log of what I've built — some for myself, some for clients. Live tools you can try today, and case studies of the rest.
$ build: fikajoinery.co.uk
$ deploy: vercel — production
$ status: live ✓
The online home for a Glasgow bespoke carpentry business.
Marketing site and project gallery for a joinery company, built for architects, designers, homeowners, and construction firms across Scotland to browse past work and request a quote.
$ ai-tutor: session started
$ lesson-builder: draft saved
$ grading: 24 submissions scored
AI tutor, lesson builder, and grading assistant in one platform.
An AI-integrated learning platform for students and teachers — adaptive tutoring, a lesson builder, and a grading assistant to give classrooms more room to work.
$ catalog: syncing products
$ brand: PK Smoke
$ status: live ✓
Storefront for a curated smoke-shop brand's products and accessories.
E-commerce storefront showcasing PK Smoke's selected products, brands, and accessories.
$ auth: google / sms otp ✓
$ analysis: arguments mapped ✓
$ status: live ✓
Logical analysis of texts, from everyday language to scientific writing.
A Persian-language platform that separates a text's arguments from its explanations, maps their structure, and analyses them with methods like the art of reasoning and Aristotelian logic. Users sign in with Google or a one-time code sent to their mobile number, get transactional emails, and keep a saved analysis history, a learning centre, and credit-based plans.
$ kdf: PBKDF2-SHA256 × 600,000
$ cards: sealed with AES-256-GCM
$ server sees: ciphertext only ✓
A password and secrets vault the server itself can't read.
My own end-to-end encrypted vault for logins, cards, Wi-Fi passwords and notes. Keys are derived and cards are encrypted in the browser with the Web Crypto API, so the database only ever stores ciphertext.
Tell me what you're building and where you're stuck. I typically reply within a day.