Skip to content

Brownfield Pattern

This is the default pattern.

This is the simplest and most straightforward pattern to use Tauri with, because it tries to be as compatible as possible with existing frontend projects. In short, it tries to require nothing additional to what an existing web frontend might use inside a browser. Not everything that works in existing browser applications will work out-of-the-box; see the Incompatibility section for more details.

If you are unfamiliar with Brownfield software development in general, the Brownfield Wikipedia article provides a nice summary. For Tauri, the existing software is current browser support and behavior, instead of legacy systems.


The first incompatibility category is simple: any browser-specific APIs will not work properly inside Tauri (even while using the Brownfield pattern). If the API is not widely supported across browsers, it probably won’t be supported across all platforms while using Tauri.

The second incompatibility category is features that are planned for Tauri, but are currently not fully implemented. Here is a list of examples:


Because the Brownfield pattern is the default pattern, it doesn’t require a configuration option to be set. To explicitly set it, you can use the tauri > pattern object in the tauri.conf.json configuration file.

"tauri": {
"pattern": {
"use": "brownfield"

There are no additional configuration options for the brownfield pattern.

© 2024 Tauri Contributors. CC-BY / MIT