What each site taught me
Five projects, oldest first, and the main thing I took from each one.
Islamic Tools Hub
This taught me the very basics: what an API key is, how it works and how to use one.
This was my first real try at building something with an API. It was very low level, it wasn't technical and it didn't look good at all.
It did teach me the very basics of what an API key is and how it works. Seeing that work is what made me want to build more.
HTML · CSS · REST APIs


News Flux
How to work with a collaborator: committing, pushing and building one site together. Also my first proper go at React.
News Flux is a news aggregator I built with a friend. He made the news page. I made the weather, currency, NASA and crypto pages and designed the site.
It taught me how to work with a collaborator, and how to commit and push. I got much more practice with API keys, which gave me trouble at first, and picked up better design techniques from templates and classes I found online and on GitHub.
It was the first project where I properly used JavaScript in a website, along with Tailwind, React, Vite and Flask, and the first time I tested with Postman. It still had plenty of issues, but it was the first thing I made that I thought looked good.
JavaScript · React · Tailwind CSS · Vite · Flask · Postman · Git


Prof. Dr G. Hussein website
If communication with a client isn't done right, the build drags on. And reuse matters: I wrote hundreds of near-identical lines of HTML.
I made this site for a professor to document his work, achievements and history. It was my first bigger solo project, and it showed.
The main thing I learnt is how important it is to communicate with a client. I didn't do it well, and that made the build extremely long and dragged out.
I also learnt the value of reusability. I built it almost entirely in HTML and some CSS, which meant hundreds of similar, redundant lines. Libraries would have made it far easier. It was also my first time with web forms, email routing, CAPTCHA, a navbar and 15+ blog posts with templates I designed myself. Not all of it went perfectly, but I got it running and I was really proud of it.
Web forms · CAPTCHA · GitHub Pages


Renewly
Working with a database and real users means security comes first: who can see what, and what the frontend never gets to touch.
Renewly was my first big collaborative project and my first time working with a database, a login system and a user base. If it went wrong it could cause real damage, and that changed how I think. We also planned the flow and tools first, instead of just coding with no direction.
Most of what I learnt was about protecting data. I used SQL and Supabase to manage the database and set its rules, stopped people reaching other accounts' data by changing the URL, and kept the backend hidden from the frontend.
It also showed me how much communication with a collaborator matters, and how important file and variable naming gets across a huge number of files. I lost progress more than once to bad Git habits I thought didn't matter, which is how I learnt to take branches and rebasing seriously.
TypeScript · Next.js · Supabase · SQL · Zustand


DSB Commercial Cleaning
Everything came together here. I also learnt to use AI properly: as a co-agent that helps me build, teaches me and debugs, with me reviewing all of it.
This is where I put everything together, including my past mistakes. I had a full plan and stuck to it. I asked the client all my questions at once instead of waiting, set up scheduled talks and built prototypes for them to react to.
I also learnt how to use AI properly. I treat it as a co-agent: it helps me build, teaches me as I go and helps me debug when I'm stuck, and I review everything it recommends before it goes in. A lot of people use it blindly and their skills get dulled, so I made a point of using it the right way, and it went well.
It was my first time using Web3Forms, getting my own domain through Namecheap, deploying it and connecting it all through Cloudflare, after a lot of tutorials and failed deployments. It was also my first time doing proper security checks: HTTPS enforced with HSTS, a Content Security Policy, security headers and rate limiting. I set up a business email address with SPF and DMARC, used a Cloudflare Worker for email routing around launch, connected Google Search Console, and followed UK rules on handling user data.
Astro · Cloudflare · Web3Forms · Security headers


Next: Security
Working through TryHackMe and the Google Cybersecurity Certificate, with the aim of a career in cyber security.