Open-source project
soulhotel/FF-ULTIMA avatar
soulhotel/FF-ULTIMA

FF Ultima: a Firefox userChrome theme where almost everything is a setting

The Firefox theme with too many options.. FF Ultima.

1,241 stars47 forksCSSMPL-2.0

At a glance

What is it?
FF Ultima is a CSS theme for Firefox that ships a setup wizard and a documentation site, and its organising principle is that nearly every element you can see or not see is an optional setting. It supports several tab layouts including vertical tabs and Sidebery, and it is a sequel to the same author's FF Perfection CSS theme.
Who is it for?
Adopt FF Ultima if you want a heavily customisable Firefox chrome and are prepared to read a documentation site and configure through a wizard. Do not adopt it while the developer note in the README stands, because the theme is mid-update and the Nova option is called out as broken on Firefox 156 and later.
Can I use it commercially?
Yes, with conditions. MPL-2.0 is a weak copyleft licence: you can use it inside commercial and closed-source software, but if you distribute changes to its own files, you must publish those changes under the same licence.
Is it still maintained?
Yes. The repository last received commits 1 day ago.
What is it written in?
Mainly CSS, according to GitHub's language statistics.

Answers come from the project's GitHub data, last synced on October 22, 2026, and from our analysis. They are not legal advice.

Editorial analysis

The developer note comes before anything else

The first thing in the README is a warning block, and it is the most useful thing in the document for a new user.

The note says that for anyone discovering the theme for the first time, FF Ultima is currently going through a massive update, expected to land in the upcoming days. The developer has been away for a couple of months and needs to catch up on changes and documentation. And then the practical instruction: if you are using Firefox 156 or later, disable Nova and use it at your own discretion, or wait a couple of days. Updates are coming soon, tracked on a specific issue, 515.

The reason this note matters more than it would for an ordinary theme is the nature of what a userChrome stylesheet is. It is a set of CSS rules that target the internal markup of the Firefox interface, the class names and element structure of the browser chrome. When Firefox changes that markup, a theme breaks, and it usually breaks in a way that is visually confusing rather than obviously fatal. A theme that has not been updated for a couple of months of Firefox releases is going to have selectors that no longer match.

The project is MPL-2.0 licensed, the primary language is CSS, the default branch is main, and the last push to the repository was on 2026-10-14. The recent releases are 4.3 from 2025-12-03, 4.2 from 2025-11-04, and 4.1 from 2025-10-15, and the version numbers are plain integers, which is what you would expect for a project where the release is a snapshot of a stylesheet rather than an API.

A theme with too many options

The tagline is the theme with too many options, and the Features section explains what that means in practice.

FF Ultima is described as a theme for everyone and anyone. All operating systems are supported, and you can use it in multiple layouts: Tabs on top, under the URL bar, vertical tabs, Sidebery, and Hidden. Then there is the configuration side, with settings for spacing, autohiding, accessibility, colors, and more.

The sentence that explains the design is at the end of that paragraph. Almost everything you see or do not see is an optional setting that can be turned on or off.

That is a meaningfully different design from most Firefox themes, which make a single decision about the interface and hand you the result. A theme built on optional settings has to make its defaults good, because most people never open the settings, and it also has to make every setting reachable, because the people who do open the settings want control over details the default cannot anticipate.

The layout list is worth reading as a statement about scope. Vertical tabs and Sidebery support are not cosmetic extras. Firefox does not have a vertical tab mode of its own, so a theme that provides one is restyling the tab strip container and making it behave like a sidebar, and a theme that supports Sidebery has to work with a completely different tab implementation that the theme does not control. That is a substantial amount of CSS work, and it is the kind of work that cannot be done once and left alone.

The README also notes that FF Ultima fully supports use with add-on themes, and tries to support extensions like Sidebery and Auto Tab Color automatically, so users are not restricted in what they want to use and how they want to use it. Autoconfig is somewhat supported as well.

And it is a sequel to the same author's FF Perfection CSS theme, which is worth knowing because a user migrating from that theme will find the option set familiar.

Three ways to install, and a wizard in the repository

The installation is documented with video tutorials, and there are three routes, chosen by how much you want to automate.

You can download the theme manually, use git and a terminal with a one-line userChrome install, or automate the whole thing with gituserChrome, which is the gituserChrome application. If you cannot find what you are looking for in the documentation, the instruction is to post an issue on GitHub.

The repository layout shows that this is not just a stylesheet. There is userChrome.css and userContent.css at the top level, which is the standard split between the browser chrome and the pages you visit. There is a theme/ directory, a userchromejs/ directory for the JavaScript that goes with it, a dev/ directory, a setup wizard/ directory, a ucc.json file, a changelog.md, and a license file.

The setup wizard is the notable addition. A theme with this many options needs a way to choose them, and a browser-based wizard is a better answer than a hundred lines of CSS variables to edit by hand. The alternative, a preferences page inside Firefox driven by about:config keys, is the approach the WaveFox theme takes, and it works, but it puts the burden of learning the key names on the user.

The documentation lives on its own site at ff-ultima.github.io, with a Getting Started page, a theme settings section covering spacing, autohiding, accessibility, and colors, and a configurations section with dedicated pages for Sidebery and for adaptive tab colour. The theme and the documentation are separate projects, which is a common arrangement for a project whose documentation is bigger than its code.

What a userChrome theme actually owes the browser

There is a structural reason that themes like this one are almost always CSS with some userChrome JavaScript alongside it, and it is worth understanding before you install one.

A userChrome.css file lives in your Firefox profile and is loaded at startup, but only when the preference toolkit.legacyUserProfileCustomizations.stylesheets is enabled, which is off by default. That preference is off by default for a reason: a malformed stylesheet can produce a browser window you cannot use, and there is no safe mode for the chrome the way there is for content.

Once enabled, the stylesheet can target essentially any element in the browser interface, which is what makes the layout options possible. Vertical tabs, a hidden tab bar, a different URL bar position, autohiding, and custom spacing are all restatements of the browser's own layout, and there is no supported API for any of them. The only mechanism available is CSS that overrides what the browser built, which is exactly as fragile as it sounds.

The userchromejs/ directory adds a second mechanism, JavaScript running in the browser chrome context, which is needed for the things CSS cannot do. Behaviour that depends on state, such as reacting to a window size or a tab count, is not something a stylesheet can express.

The practical consequence for a user is that a theme is coupled to a Firefox version in a way that an ordinary application is not. The developer's own note is the evidence: months away, and the fix is a breaking change for anyone on the current release. The theme that ships with the right selectors for your Firefox is the one to use, and the versions are the way to find it.

Editorial conclusion

Adopt FF Ultima if you want a heavily customisable Firefox chrome and are prepared to read a documentation site and configure through a wizard. Do not adopt it while the developer note in the README stands, because the theme is mid-update and the Nova option is called out as broken on Firefox 156 and later. Verify first which Firefox version your copy targets, since a userChrome stylesheet is tightly coupled to the browser's own markup.

Frequently asked questions

What is FF Ultima and what does it do?

It is a Firefox userChrome CSS theme with a very large option set. It supports all operating systems, offers several tab layouts including tabs on top, tabs under the URL bar, vertical tabs, Sidebery, and hidden, and provides settings for spacing, autohiding, accessibility, and colors, with almost everything visible or hidden being an optional setting.

How do I install FF Ultima?

Three ways, each with video tutorials: download the theme manually, use git and a terminal with the one-line userChrome install, or automate the whole thing with the gituserChrome application. The documentation site at ff-ultima.github.io has the how-to pages and a Getting Started guide.

Is FF Ultima safe to install on the latest Firefox right now?

The developer note at the top of the README says the theme is going through a massive update after the developer was away for a couple of months, and that if you are using Firefox 156 or later you should disable Nova, use it at your own discretion, or wait a couple of days for the update.

Does FF Ultima work with vertical tabs and Sidebery?

Yes. Vertical tabs and Sidebery are both listed as supported layouts, and the README says the theme tries to support extensions like Sidebery and Auto Tab Color automatically so users are not restricted in what they use. There is a dedicated documentation page for the Sidebery configuration.

What is the relationship between FF Ultima and FF Perfection CSS?

FF Ultima is described as a sequel to FF Perfection CSS, which is by the same author. The theme is licensed under MPL-2.0, the primary language is CSS, and the recent releases are 4.3, 4.2, and 4.1, with the last push to the repository on 2026-10-14.

Official sources

  1. Issues
  2. License: MPL-2.0
  3. README
  4. Releases
  5. soulhotel/FF-ULTIMA on GitHub
Add this badge to your README

If you maintain this project, the badge below links readers to this analysis and shows its maintenance status from the daily GitHub snapshot. Paste the markdown into your README; add ?metric=license or ?metric=stars to the image URL for a different field.

Add this badge to your README

markdown
[![Hysen Labs](https://hysenlabs.com/badge/soulhotel-ff-ultima.svg)](https://hysenlabs.com/projects/soulhotel-ff-ultima)

Was this useful?