Which Browser First Supported Userscripts Natively?

Opera was the first major web browser to offer native support for userscripts, introducing a feature known as User JavaScript in Opera 8 in April 2005. While Firefox popularized userscript customization around the same timeframe through third-party extensions like Greasemonkey, Opera built client-side JavaScript execution capabilities directly into its browser settings without requiring any external plugins or extensions.

The Rise of Opera’s User JavaScript

During the mid-2000s, web browsers relied heavily on add-ons to alter web pages dynamically. Opera Software bypassed the need for add-ons by embedding native script execution into the Presto rendering engine.

By defining a dedicated local folder within the browser settings, users could drop .js files into a directory, and Opera would automatically run those scripts on matching websites upon loading.

Opera Native Scripts vs. Extension-Based Solutions

While Firefox became famous for userscripts, its functionality relied entirely on third-party tools. Comparing the early approaches highlights key differences in early custom browser scripting:

Feature Opera (User JavaScript) Firefox (Greasemonkey)
Support Type Native (Built directly into the OS/browser core) Extension-based (Requires add-on installation)
Launch Era Early 2005 (Opera 8) Late 2004 / Early 2005 (Extension framework)
Script Execution Local directory scanning Visual script manager UI
Configuration Native preference menu (opera:config) Third-party extension manager

Later Native Implementations in Other Browsers

Following Opera’s lead, other browser vendors eventually integrated native or near-native capabilities to manage custom JavaScript: