News


Permanent closing of the online version of Hacklol Modifier, release of the downloadable version

News

The online version of Hacklol Modifier was permanently shut down on July 21, 2026, more than 12 years after its launch in 2014!

The reason for the shutdown is simple: Hacklol Modifier relied on a proxy in order to work and load web pages (Hacklol Page Loader). For security reasons, I decided to discontinue the online version rather than leave an open proxy accessible from the Internet, especially since the website is now hosted on my own infrastructure instead of a free hosting service as it was in the past.

However, a downloadable version of Hacklol Modifier is now available! Download it here.

It is currently compatible with Windows and Linux (macOS support is coming soon) and requires no complicated setup: simply run the .exe file on Windows or the .AppImage file on Linux to start using the application. The goal is to keep it simple and accessible to everyone. As always, the source code is open-source and available on GitHub.

The application opens a window containing a form that asks, just like the online version did, for the URL (HTTP/HTTPS) of the website you want to modify. Apart from that, it works exactly the same as the online version.

Technical overview

For those interested in the technical side of things, here's a bit more detail about how it works.

Hacklol Modifier originally started as a PHP application hosted on an Apache server, a fairly standard stack. The challenge was figuring out how to turn it into a desktop application that could run without requiring users to install PHP or Apache, while also remaining cross-platform.

I first came across the Desktop PHP project, but it didn't offer much flexibility for customization. It also wasn't designed to generate a standalone executable that could be easily distributed, and the project no longer appeared to be actively maintained.

I then decided to experiment with combining Electron (which allows desktop applications to be built using Node.js and embeds the Chromium browser) with PHP. The question was: how could I bundle a PHP runtime inside an Electron application while keeping everything cross-platform?

Eventually, I discovered the StaticPHP project, which can generate a portable PHP executable containing all the required PHP libraries and extensions. It supports both Windows and Linux, making it exactly what I was looking for.

I started by setting up the Linux build system on my local machine until I was able to generate a portable PHP executable that could be launched from within the Electron application. A few more development steps later, I had Hacklol Modifier opening directly inside an Electron window. To achieve this, I simply use PHP's built-in web server, eliminating the need to bundle Apache altogether. It worked surprisingly well.

I then continued working on the Electron side of the application. I implemented a system that automatically detects an available TCP port and instructs PHP to start its built-in server on that port. I also made sure the PHP server is properly shut down when the Electron application exits.

Next came several additional challenges. One of them was that Electron's localStorage was being cleared every time the application was closed because a different port is used on each launch. To solve this, the application's localStorage is saved to a JSON file in Electron's user data directory and restored the next time the application starts.

Another improvement was only possible thanks to the full control Electron provides over the embedded Chromium browser. I implemented a workaround to bypass anti-iframe protections by modifying the Content-Security-Policy headers. This allows most websites to be opened without relying on the Hacklol Page Loader proxy (although the proxy remains enabled by default), something that simply wasn't possible with the online version.

Finally, I created a GitHub Actions workflow to automatically generate the portable PHP executables for both Linux and Windows. I later extended the workflow to also build the Electron application itself.

The source code is available here: https://github.com/Eliastik/hacklol-modifier

Commentaires