pub struct Config {
pub schema: Option<String>,
pub product_name: Option<String>,
pub main_binary_name: Option<String>,
pub version: Option<String>,
pub identifier: String,
pub app: AppConfig,
pub build: BuildConfig,
pub bundle: BundleConfig,
pub plugins: PluginConfig,
}
Expand description
The Tauri configuration object. It is read from a file where you can define your frontend assets, configure the bundler and define a tray icon.
The configuration file is generated by the
tauri init
command that lives in
your Tauri application source directory (src-tauri).
Once generated, you may modify it at will to customize your Tauri application.
§File Formats
By default, the configuration is defined as a JSON file named tauri.conf.json
.
Tauri also supports JSON5 and TOML files via the config-json5
and config-toml
Cargo features, respectively.
The JSON5 file name must be either tauri.conf.json
or tauri.conf.json5
.
The TOML file name is Tauri.toml
.
§Platform-Specific Configuration
In addition to the default configuration file, Tauri can
read a platform-specific configuration from tauri.linux.conf.json
,
tauri.windows.conf.json
, tauri.macos.conf.json
, tauri.android.conf.json
and tauri.ios.conf.json
(or Tauri.linux.toml
, Tauri.windows.toml
, Tauri.macos.toml
, Tauri.android.toml
and Tauri.ios.toml
if the Tauri.toml
format is used),
which gets merged with the main configuration object.
§Configuration Structure
The configuration is composed of the following objects:
app
: The Tauri configurationbuild
: The build configurationbundle
: The bundle configurationsplugins
: The plugins configuration
Example tauri.config.json file:
{
"productName": "tauri-app",
"version": "0.1.0",
"build": {
"beforeBuildCommand": "",
"beforeDevCommand": "",
"devUrl": "../dist",
"frontendDist": "../dist"
},
"app": {
"security": {
"csp": null
},
"windows": [
{
"fullscreen": false,
"height": 600,
"resizable": true,
"title": "Tauri App",
"width": 800
}
]
},
"bundle": {},
"plugins": {}
}
Fields§
§schema: Option<String>
The JSON schema for the Tauri config.
product_name: Option<String>
App name.
main_binary_name: Option<String>
App main binary filename. Defaults to the name of your cargo crate.
version: Option<String>
App version. It is a semver version number or a path to a package.json
file containing the version
field. If removed the version number from Cargo.toml
is used.
By default version 1.0 is used on Android.
identifier: String
The application identifier in reverse domain name notation (e.g. com.tauri.example
).
This string must be unique across applications since it is used in system configurations like
the bundle ID and path to the webview data directory.
This string must contain only alphanumeric characters (A-Z, a-z, and 0-9), hyphens (-),
and periods (.).
app: AppConfig
The App configuration.
build: BuildConfig
The build configuration.
bundle: BundleConfig
The bundler configuration.
plugins: PluginConfig
The plugins config.
Trait Implementations§
Source§impl<'de> Deserialize<'de> for Config
impl<'de> Deserialize<'de> for Config
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
impl StructuralPartialEq for Config
Auto Trait Implementations§
impl Freeze for Config
impl RefUnwindSafe for Config
impl Send for Config
impl Sync for Config
impl Unpin for Config
impl UnwindSafe for Config
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit
)