Tauri 설정

Intro

tauri.conf.json 파일은 Tauri 애플리케이션의 다양한 설정을 관리하는 데 사용되며, 애플리케이션의 동작을 세부적으로 제어할 수 있는 여러 유용한 옵션이 포함되어 있습니다.

유용한 옵션

윈도우 설정

title

  • 윈도우의 제목을 설정합니다.
"windows": [
  {
    "title": "My Tauri App"
  }
]

width & height

  • 초기 윈도우의 너비와 높이를 설정합니다.
"windows": [
  {
    "width": 800,
    "height": 600
  }
]

minWidth & minHeight

  • 윈도우의 최소 크기를 설정하여, 리사이즈 시에 최소 크기를 제한할 수 있습니다.
"windows": [
  {
    "minWidth": 400,
    "minHeight": 300
  }
]

resizable

  • 윈도우의 리사이즈 가능 여부를 설정합니다.
"windows": [
  {
    "resizable": true
  }
]

fullscreen

  • 윈도우가 시작할 때 전체 화면으로 실행되도록 설정합니다.
"windows": [
  {
    "fullscreen": false
  }
]

보안 설정

csp (Content Security Policy)

  • 콘텐츠 보안 정책을 설정하여 외부 리소스 로드를 제어합니다.
"security": {
  "csp": "default-src 'self'; script-src 'self' 'unsafe-inline';"
}

dangerousDisableAssetSecurity

  • 보안 자산 로딩을 비활성화하여 로컬 파일 접근을 허용할 수 있습니다. 개발 모드에서만 사용 권장합니다.
"security": {
  "dangerousDisableAssetSecurity": true
}

애플리케이션 아이콘

icon

  • 애플리케이션 아이콘 파일의 경로를 설정합니다. 다양한 해상도의 아이콘을 지정할 수 있습니다.
"bundle": {
  "icon": ["icons/32x32.png", "icons/128x128.png"]
}

환경 설정

build

  • 개발 중 및 빌드 후 사용될 파일의 경로를 설정합니다.
    • distDir: 빌드(npm run tauri build) 명령어를 실행할 때 Tauri가 참조하는 소스 파일들이 위치한 폴더입니다.
    • devPath: 개발 모드(npm run tauri dev) 명령어를 실행할 때 Tauri가 참조하는 소스 파일들이 위치한 폴더입니다.
"build": {
  "distDir": "../dist",
  "devPath": "http://localhost:3000"
}

출력 폴더 설정

  • 빌드 결과물을 생성할 폴더를 설정합니다.
  • 다음 예제에서는 ../build로 설정하여 프로젝트 루트의 build 폴더에 결과물이 생성됩니다.
{  
  "tauri": {
    "bundle": {
      "output": "../build" // 빌드 결과물의 출력 폴더
    }
  }
}

기타 설정

cli

  • 애플리케이션에 명령줄 인터페이스(CLI) 기능을 추가합니다.
"cli": {
  "description": "My Tauri App CLI",
  "longDescription": "A longer description for the CLI of my Tauri App",
  "beforeHelp": "A help text before",
  "afterHelp": "A help text after",
  "args": {
    "verbose": {
      "short": "v",
      "description": "Show verbose output"
    }
  }
}

updater

  • 애플리케이션의 자동 업데이트를 설정합니다.
"updater": {
  "active": true,
  "dialog": true,
  "endpoints": ["https://my-update-server.com"],
  "pubkey": "your-public-key"
}