# Kameleo Junglefox: its Firefox engine, explained

> Junglefox is Kameleo's Firefox-based engine, beside Chroma, its Chromium one. A Firefox profile needs an engine that really is Firefox, and keeping one is work.

Source: https://mosaicbrowser.com/blog/kameleo-junglefox

## Junglefox and Chroma, Kameleo's two engines

Junglefox is Kameleo's Firefox-based engine, beside Chroma, its Chromium one. A Firefox profile needs an engine that really is Firefox, and keeping one is work.

![Chroma versus Junglefox, each name in its own tile: Kameleo runs two engines](https://mosaicbrowser.com/covers/kameleo-junglefox.webp)

Junglefox is Kameleo's Firefox-based browser engine. Kameleo runs it alongside Chroma, its Chromium-based engine, and picks between them by the profile: a profile with a Firefox fingerprint opens in Junglefox, a Chrome-style one in Chroma. Kameleo's [developer docs on kernels](https://developer.kameleo.io/concepts/kernels/) describe both. Keeping a Firefox engine maintained beside a Chromium one is real, ongoing work, and not every vendor has kept at it, which is the reason Junglefox is worth understanding, including for people who end up using something else.

We make Mosaic, which has one Chromium engine and no Firefox one. We have tried to describe Kameleo's approach fairly, from its own pages, and to say where it fits better than ours.

## Why a Firefox profile needs a Firefox engine

An anti-detect browser's engine is a modified build of a real browser. The fingerprint values it reports are changed in the browser's own code, so the page sees one consistent machine. That is why Kameleo builds engines of its own rather than one browser with scripts on top.

That only works if the engine is the browser the profile claims to be. A page does not have to trust the User-Agent. It can test which JavaScript features exist, which CSS properties parse, how canvas and WebGL draw, how fonts are measured, and which TLS handshake arrives before any of that. Every one of those comes from the engine. A Chromium build that says "Firefox" in its header still answers each test the way Chromium does, and the contradiction is stronger evidence than either browser would be on its own. The handshake half of that is in [JA4 moving with the Chrome major](https://mosaicbrowser.com/blog/ja4-moves-with-the-chrome-major): a version claim has to agree with the bytes underneath it.

So a vendor that wants to offer Firefox profiles honestly has to ship a Firefox engine. That is what Junglefox is.

Mosaic is a desktop app

Email yourself the link and open it on your computer.

[How it works: Its own Chromium](https://mosaicbrowser.com/features/engine)

## What two engines cost a vendor

Running two engines is not twice the same work. It is two separate jobs.

Chrome and Firefox each ship a new major version roughly every four weeks. Each time, a vendor has to move its changes onto the new source, rebuild and release, or its profiles start claiming a version that real browsers have left behind. A second engine means a second rebase on a second schedule.

And very little transfers between the two. Firefox and Chromium differ in how they draw canvas, report WebGL, measure fonts, list voices and shape their network traffic, so a fingerprint change written for one is usually a fresh piece of work in the other. Every time a detector learns to read a new surface, both engines need an answer.

That cost is why Firefox engines tend to disappear. Multilogin moved its Firefox-based core, Stealthfox, to legacy status and pointed its users to its Chrome-based core instead; what a frozen engine does to the profiles left on it is in [Multilogin froze Stealthfox](https://mosaicbrowser.com/blog/stealthfox-legacy). Kameleo is among the vendors that kept going.

## What we can say about our side of that cost

We know the Chromium half of the work from the inside. Our engine, Tesseract Chrome, is stock Chromium source with our patches applied on top. When we timed a move to a new Chrome major on our build machine, the near-full rebuild took 93 minutes, against one or two minutes for an incremental build after changing a single patch. The rebuild is the cheap part. The expensive part is measuring the new build against a real Chrome of the same version again, because comparing one major with the next measures the release, not our changes.

We decided to do that job once and do it well, for one engine. That is a real limitation, and it is the main reason to look at Kameleo instead.

## When Kameleo's Junglefox is the better fit

Pick a product with a maintained Firefox engine when the profile genuinely has to be Firefox. Three cases come up:

1. Testing a site or an app as Firefox users see it, including Firefox-only behaviour and bugs.
2. Work that needs a spread of browsers rather than many copies of Chrome, for example where a site you test treats Chrome and Firefox visitors differently.
3. Automation built around Firefox. Kameleo supports Selenium, Puppeteer and Playwright.

Kameleo also offers Docker images and headless running, which Mosaic does not: Mosaic is a desktop app for macOS and Windows, and its local API listens only on your own computer.

## When a Chromium engine is enough

Most work does not need Firefox. A profile claiming Chrome is in the largest crowd there is, and an engine that is genuinely Chromium can claim Chrome without contradicting itself, provided the values it changes are changed in the engine rather than in page scripts. Why that last part matters, and what goes wrong when one value is spoofed twice, is in [C++ versus JavaScript spoofing](https://mosaicbrowser.com/blog/cpp-not-javascript).

That is the case Mosaic is built for: one Chromium engine, every profile drawn from a real device record and matched to its proxy exit, kept on your computer. If your work needs Firefox profiles, it is not the right product, and Kameleo is one of the places to look. For a wider field with the trade-offs laid side by side, see [the best anti-detect browsers](https://mosaicbrowser.com/compare/best-anti-detect-browsers).

## Questions

### What is Junglefox in Kameleo?

Junglefox is Kameleo's own browser engine built on Firefox. Profiles that carry a Firefox fingerprint run on it, while Chrome-style profiles run on Chroma, Kameleo's Chromium-based engine.

### When should I use Junglefox instead of Chroma?

When the profile has to be Firefox: a site you test that behaves differently for Firefox users, or work that needs a mix of browsers rather than many copies of Chrome. For a Chrome profile, Chroma is the engine that matches.

### Why can't a Chromium browser just pretend to be Firefox?

Because a page can check far more than the User-Agent. The JavaScript features, the CSS a browser supports, the way it draws canvas and the TLS handshake it sends all come from the engine, and they say Chromium whatever the header claims.

### Does Mosaic have a Firefox engine?

No. Mosaic runs one engine, Tesseract Chrome, built from Chromium source, and its profiles claim Chrome. If you need Firefox profiles, a product with a Firefox-based engine such as Kameleo fits that need better.

## Related

[Multilogin froze Stealthfox, and what a legacy engine means](https://mosaicbrowser.com/blog/stealthfox-legacy): Multilogin lists Stealthfox as a legacy core and points users to Mimic. A browser core that stops updating turns its own version into a signal.

[The best anti-detect browsers, compared on the same criteria](https://mosaicbrowser.com/compare/best-anti-detect-browsers): Seven anti-detect browsers on one table: free plan, entry price, what they bill by, teams, mobile and automation, from each vendor's own page in November 2026.

[Why we change fingerprints in C++, not JavaScript](https://mosaicbrowser.com/blog/cpp-not-javascript): A JavaScript spoof is one realm deep. An iframe read the real source of 33 of our patched functions; the same values changed in C++ agree everywhere.

[JA4 moves with the Chrome major, and that is not a tell](https://mosaicbrowser.com/blog/ja4-moves-with-the-chrome-major): Chrome 152 read t13d1517h2 and 153 read t13d1518h2: one TLS extension apart. Compare a JA4 only against a Chrome of the same major version.

[Is Camoufox still maintained? Reading the repository](https://mosaicbrowser.com/blog/is-camoufox-maintained): Is Camoufox still maintained? Its repository answers better than forums do: compare the latest release's date and Firefox base with today's Firefox.

[Headless is not a way to hide, it is a way to be seen](https://mosaicbrowser.com/blog/headless-is-a-signal): Headless Chrome names itself HeadlessChrome in its user agent and drops the real GPU. Why our background work runs headed, off-screen, instead.





## Mosaic, on your own computer

The browser this blog is about: its own Chromium, fingerprints from real machines and a proxy exit per profile. Free holds 3 profiles. Pro is $49 a month for any number.

Mosaic is a desktop app

Email yourself the link and open it on your computer.
