In this post I will demonstrate how to setup mmpose inside a docker container to detect animals poses using the pre-trained COCO-animal pose estimation model from mmpose.
Executing JavaScript in Shared Hosting (cPanel) Using PHP
In some cPanel environments where your website is hosted on shared hosting, it can be very difficult to find a way to evaluate JavaScript. In this post, I’ll share a method I discovered that allows you to execute JS on a shared host directly from PHP code.
How to Add Integration Tests to a Golang Gin Project
Integration testing helps ensure that different parts of your application work correctly together. This guide will show you how to add integration tests to a Golang project using the Gin framework.
How to collect Users' addresses in Stripe
If you’re working with Stripe and realize that the account didn’t collect old users’ billing addresses, you might need a way to retrieve them. This can be important for legal or compliance reasons.
My workout playlist
Maintaining my physical and mental health is a priority, and running and working out have become key components of that. I try to make time for exercise after work or on weekends when the weather is good and when I have time. It’s a great way to de-stress and stay in shape after long hours at a desk.
Integrate Pac-Man Contribution Graph into Your GitHub Profile
Want to add a fun and interactive touch to your GitHub profile? You can integrate a Pac-Man game into your contribution graph using GitHub Actions! This method automatically updates your profile every 24 hours with a Pac-Man animation that plays across your contributions. Here’s how to set it up:
My voice from Germany for Palestine
A long time ago, I was having a conversation with my mother about my country Palestine. I told her that the situation would get worse. She said, “This is our life. It is our destiny to live this struggle and fight it. For that, we were born in this land. This is our test.”
Pacman contribution graph
Have you ever looked at your GitLab or GitHub contribution graph and thought, “This could be… more exciting?” I know I have. I wanted a fun and creative way to visualize my contributions, especially on GitLab, where I store all my private projects. Unfortunately, I couldn’t find anything online that did the trick.
Solving mobile video issues with `playsinline`
While working on a project that involved building a massive video library, I ran into an interesting issue on mobile devices. On certain pages, we had short video previews that auto-played as soon as the user navigated to the page. While it worked perfectly on desktop browsers, mobile browsers kept forcing the videos into fullscreen mode as soon as they started playing.
Reduce website load and render time
Since last August, I’ve been working on an exciting freelancing project to rebuild and optimize a long-running customer website. The original website had performance issues, with slow loading speeds affecting user experience. My goal was not just to rebuild but to significantly improve the speed and efficiency of the site. Here’s how I approached it.
Implement Basic Authentication Using Cloudflare Workers
When I started working on migrating data from the old website of a project I’m developing for a client to the new website, I felt the need to prevent external users from accessing the site and seeing the migrated data. Only internal users should have access during this phase.
Typically, I implement Basic Authentication through nginx site configurations, which works well. However, I recalled reading that this could also be achieved with Cloudflare Workers—offering a simpler and more flexible solution. In this post, I’ll guide you through implementing Basic Authentication using Cloudflare Workers.
Projects I Worked on in 2024
This past year has been quite active and fun to me as I took part in quite a number of projects for people from different parts of the world. As a matter of fact, I worked with clients from several countries: Norway, Palestine, and the US. Below is a concise outline of the works I did that kept my head spinning.
How to load fonts inside shadow dom
While working on Petmety, I encountered a situation where I needed to load a custom font for text elements inside a Shadow DOM. I chose to encapsulate everything within a Shadow DOM to separate state, CSS, and logic. This task turned out to be somewhat tricky, so I decided to share my solution with you.
How to search for patterns with new line in VSCode
As a developer, you often come across the need to search and remove specific patterns in your code. Recently, I faced a situation where I needed to find and remove a pattern that started with a specific word and ended with another.
Mrs. Chatterjee vs. Norway Movie Review
I recently had the chance to watch “Mrs. Chatterjee vs. Norway” on Netflix, and I must say it was a fascinating and deeply moving experience. Based on a true story.
The movie revolves around Mrs. Chatterjee, an Indian immigrant mother living in Norway, who faces the unimaginable ordeal of having her children taken away from her by Norwegian child protection services. Her battle to reunite with her children forms the crux of the narrative. The story is not just about a mother’s love and determination but also about the cultural clashes and misunderstandings that can arise when immigrants navigate the legal and social systems of their new countries.