Back to blog
5 min read

Building iLoveMedia

Your browser is good enough to entirely run powerful media utilities locally.
  • opensource

Most server-backed online tools follow the same pattern: upload your files, wait for a server to process them, then hope your data is handled responsibly. Why use a server-backed online tool to convert an image from PNG to WEBP or JPEG format?
iLoveMedia is built to break that pattern by providing free alternative tools such as image converter, audio recorder & converter, background remover, and more.

A live demo is available and fairly functional, check it out today.

The founding idea

It is simple but powerful: if modern browsers are already capable of heavy computation, why send sensitive data anywhere at all? iLoveMedia runs entirely in your browser, no servers, no uploads, and no tracking. Your files never leave your device, because all the processing happens locally.

That said, why fairly functional?

Everything is perfect until you try to convert a 500MB MOV video to MP4. While it is possible, the conversion takes significantly long to complete compared to server-backed tools. This depends not only on the file size but also available resources on your machine.

This zero-upload philosophy is at the core of everything iLoveMedia does. By relying on WebAssembly and modern browser APIs, it turns the browser into a private, high-performance workspace rather than just a thin client. Images, video and audio are processed directly on your machine, giving you speed, privacy, and full control over your data.

Technologies used

Under the hood, iLoveMedia uses a carefully chosen set of browser-side technologies to make this possible.

Special thanks to every developer has worked (and still working) on all these amazing opensource projects.

Developing iLoveMedia exposed me to a whole lot of powerful tools in the web space. For example, building AI-powered mobile & web apps using ONNX Web Runtime or Transformers.js

Project origins

Using server-backed online tools makes me feel as terrible as the weight of the load in my heart when I copy some text and delay using it. Even though I want to trust them, I can not. So I did the same thing I will continue doing, building local-first tools to go easy with my heart.

Honestly, the project itself has gone through an interesting evolution. iLoveMedia was originally co-authored with Google Gemini in AI Studio, starting as a proof of concept built with React and Tailwind CSS. As the scope grew, so did the need for better structure and long-term maintainability. That’s why the project is currently undergoing a major refactor, migrating to Vue 3 with vueuse, shadcn-vue and Lucide icons. The goal of this transition is cleaner modularity, better performance, and a smoother development experience moving forward.

Conclusion

iLoveMedia is fully open source under the MIT license and designed to be offline-first. You can download the source code and run it locally, modify it, and even use it without an internet connection once loaded. While the project is still in the middle of a heavy migration, it’s already usable and actively evolving.

At its heart, iLoveMedia is a statement: powerful tools don’t have to come at the cost of privacy. As browsers continue to grow more capable, local-first software becomes not just possible, but practical.

💭 Have Feedback?

I'd love to hear from you. Let's Talk.