<!DOCTYPE html>
<html lang="zh-Hant-TW" dir="ltr">
  <head>
    <meta charset="utf-8"/>
    <meta name="viewport" content="width=device-width, initial-scale=1"/>
    <title>Glossary</title>
    <meta name="description" content="A glossary reference for terminology used across docs.flutter.dev."/>
    <link href="https://docs.flutter.tw/resources/glossary" rel="canonical"/>
    <link sizes="64x64" href="/assets/images/branding/flutter/icon/64.png" rel="icon"/>
    <link href="/assets/images/branding/flutter/logo/flutter-logomark-320px.png" rel="apple-touch-icon"/>
    <meta name="twitter:card" content="summary"/>
    <meta name="twitter:site" content="@flutterdev"/>
    <meta name="twitter:title" content="Glossary"/>
    <meta name="twitter:description" content="A glossary reference for terminology used across docs.flutter.dev."/>
    <meta name="twitter:image" content="https://docs.flutter.tw/assets/images/flutter-logo-sharing.png"/>
    <meta property="og:title" content="Glossary"/>
    <meta property="og:description" content="A glossary reference for terminology used across docs.flutter.dev."/>
    <meta property="og:url" content="https://docs.flutter.tw/resources/glossary"/>
    <meta property="og:image" content="https://docs.flutter.tw/assets/images/flutter-logo-sharing.png"/>
    <link href="https://fonts.googleapis.com" rel="preconnect"/>
    <link crossorigin href="https://fonts.gstatic.com" rel="preconnect"/>
    <link href="https://fonts.googleapis.com/css2?family=Google+Sans+Flex:opsz,wght@6..72,400..700&amp;family=Google+Sans+Code:ital,wght@0,400..700;1,400..700&amp;display=swap" rel="stylesheet"/>
    <link href="https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@24,400,0..1,0" rel="stylesheet"/>
    <link href="https://www.gstatic.com/glue/cookienotificationbar/cookienotificationbar.min.css" rel="stylesheet"/>
    <link href="/assets/css/main.css?hash=nRb8tM9Sp9NY" rel="stylesheet"/>
    <script>
      window.dataLayer = window.dataLayer || [];
      function glueCookieNotificationBarLoaded() {
        (function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
        new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
        j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
        'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
        })(window,document,'script','dataLayer','GTM-ND4LWWZ');
      }
      
    </script>
    <script data-glue-cookie-notification-bar-category="2B" data-glue-cookie-notification-bar-site-id="docs.flutter.dev" src="https://www.gstatic.com/glue/cookienotificationbar/cookienotificationbar.min.js" defer></script>
    <meta property="og:locale" content="zh_TW"/>
    <link title="Markdown" href="/resources/glossary.md" rel="alternate" type="text/markdown"/>
    <script type="application/ld+json">
      {"@context":"https://schema.org","@graph":[{"@type":"WebSite","@id":"https://docs.flutter.tw/#website","url":"https://docs.flutter.tw/","name":"Flutter 文件","description":"學習 Flutter 並用它建置多平台應用程式的官方文件， 包含指南、教學、範例與參考資料。","inLanguage":"zh-Hant-TW"},{"@type":"WebPage","@id":"https://docs.flutter.tw/resources/glossary#webpage","url":"https://docs.flutter.tw/resources/glossary","name":"Glossary","description":"A glossary reference for terminology used across docs.flutter.dev.","inLanguage":"zh-Hant-TW","dateModified":"2026-10-25T18:25:40.000Z","isPartOf":{"@id":"https://docs.flutter.tw/#website"}}]}
    </script>
    <meta name="google-site-verification" content="HFqxhSbf9YA_0rBglNLzDiWnrHiK_w4cqDh2YD2GEY4"/>
    <script type="module" integrity="sha256-Jy0j0fUMJ2T3WxSEs2WjHLrS+3DlO7S9DItQtP55FII=" crossorigin="anonymous" referrerpolicy="no-referrer" src="https://cdn.jsdelivr.net/npm/@justinribeiro/lite-youtube@1.8.2/lite-youtube.js"></script>
    <script type="speculationrules">{"prefetch":[{"where":{"href_matches":"/*"},"eagerness":"moderate"}],"prerender":[{"where":{"and":[{"href_matches":"/*"},{"not":{"selector_matches":".no-prerender"}}]},"eagerness":"conservative"}]}</script>
    <script src="/main.client.dart.js" defer></script>
    <style>
      .file-tree {
        display: block;
        padding: 1rem;
        color: var(--file-tree-text);
        font-size: 0.8125rem;
        line-height: 1.375rem;
        background-color: var(--file-tree-bg);
      }
      .file-tree ul {
        padding-left: 0.125rem;
        margin-left: 0.5rem;
        border-left-style: solid;
        border-left-color: var(--file-tree-icon);
        border-left-width: 1px;
        list-style-type: none;
      }
      .file-tree > ul {
        padding: 0;
        margin: 0;
        border: none;
      }
      .file-tree li {
        margin-top: 0.125rem;
        margin-bottom: 0.125rem;
      }
      .file-tree li.file {
        display: flex;
        margin-left: 1.25rem;
      }
      .file-tree li svg {
        display: inline;
        width: 0.875rem;
        height: 0.875rem;
        margin-left: 0.25rem;
        margin-right: 0.375rem;
        color: var(--file-tree-icon);
        vertical-align: middle;
      }
      .file-tree li.directory > details {
        padding-left: 1.5rem;
        border: none;
        background-color: transparent;
      }
      .file-tree li.directory > details > summary {
        max-width: 100%;
        padding-left: 0.625rem;
        padding-right: 0.625rem;
        margin-left: -1.5rem;
        margin-bottom: 0;
      }
      .file-tree li.directory > details > summary::marker {
        color: var(--file-tree-icon);
      }
      .file-tree li.directory > details > summary:hover {
        cursor: pointer;
        color: var(--file-tree-highlight);
      }
      .file-tree li.directory > details > summary:hover svg {
        color: var(--file-tree-highlight);
      }
      .file-tree li.directory > details > summary:hover .tree-entry-name[data-highlighted] svg {
        color: var(--file-tree-bg);
      }
      .file-tree li.directory > details > summary:hover ~ul {
        border-left-style: solid;
        border-left-color: var(--file-tree-highlight);
      }
      .file-tree .tree-entry {
        display: inline-flex;
        align-items: start;
        gap: 0.5rem;
        vertical-align: middle;
      }
      .file-tree .tree-entry .tree-entry-name {
        display: inline-flex;
        align-items: center;
      }
      .file-tree .tree-entry .tree-entry-name[data-highlighted] {
        padding-left: 0.25rem;
        padding-right: 0.25rem;
        border-radius: 0.25rem;
        align-items: center;
        color: var(--file-tree-bg);
        background-color: var(--file-tree-highlight);
      }
      .file-tree .tree-entry .tree-entry-name[data-highlighted] svg {
        color: var(--file-tree-bg);
      }
      .file-tree .tree-entry .tree-entry-name[data-placeholder] {
        color: var(--file-tree-icon);
      }
      .file-tree .tree-entry .comment {
        padding-left: 1.5rem;
        color: var(--file-tree-icon);
        font-style: italic;
      }
    </style>
  </head>
  <body class="glossary-page" data-toc="false">
    <script>
      try {
        const storedTheme = window.localStorage.getItem('theme') ?? 'light-mode';
        if (storedTheme === 'auto-mode') {
          const prefersDarkMode = window.matchMedia('(prefers-color-scheme: dark)');
          document.body.classList.add(
              'auto-mode',
              prefersDarkMode.matches ? 'dark-mode' : 'light-mode',
          );
        } else {
          document.body.classList.add(storedTheme);
        }
      } catch (e) {
        // localStorage is not available, do nothing and fall back to default.
      }
            
    </script>
    <a id="skip-to-main" class="filled-button" tabindex="1" href="#site-content-title">Skip to main content</a>
    <header id="site-header">
      <nav class="navbar">
        <a id="site-primary-logo" class="site-wordmark" aria-label="Go to the Flutter docs homepage." title="Go to the Flutter docs homepage." href="/">
          <img width="28" alt="Flutter logo" src="/assets/images/branding/flutter/logo/default.svg"/>
          <span class="name" translate="no">Flutter</span>
          <span class="subtype">Docs</span>
        </a>
        <ul class="nav-items">
          <li><a class="nav-link text-button active" href="/">Guides</a></li>
          <li><a class="nav-link text-button" href="/learn/pathway">Learn</a></li>
          <li><a class="nav-link text-button" href="/ai/get-started">AI</a></li>
          <li>
            <a class="nav-link text-button" target="_blank" rel="noopener" href="https://api.flutter.dev">Reference</a>
          </li>
        </ul>
        <div class="navbar-contents">
          <form id="header-search" action="/search/">
            <input id="q" class="search-field" autocomplete="off" placeholder="Search" aria-label="Search" type="search" name="q"/>
          </form>
          <a id="fallback-search-button" class="icon-button" aria-label="Navigate to the docs.flutter.dev search page." title="Navigate to the docs.flutter.dev search page." href="/search"><span class="material-symbols" aria-hidden="true" translate="no">search</span></a>
          <!--@site_shared:theme_switcher-->
          <div id="theme-switcher" class="dropdown" data-expanded="false">
            <button class="dropdown-button text-button icon-button" aria-controls="theme-switcher-content" aria-expanded="false" title="Select a theme."><span class="material-symbols" aria-hidden="true" translate="no">routine</span></button>
            <div id="theme-switcher-content" class="dropdown-content">
              <div class="dropdown-menu">
                <ul role="listbox">
                  <li>
                    <button title="Switch to the light theme." aria-label="Switch to the light theme." aria-selected="true"><span class="material-symbols" aria-hidden="true" translate="no">light_mode</span><span>Light</span></button>
                  </li>
                  <li>
                    <button title="Switch to the dark theme." aria-label="Switch to the dark theme." aria-selected="false"><span class="material-symbols" aria-hidden="true" translate="no">dark_mode</span><span>Dark</span></button>
                  </li>
                  <li>
                    <button title="Match theme to device theme." aria-label="Match theme to device theme." aria-selected="false"><span class="material-symbols" aria-hidden="true" translate="no">night_sight_auto</span><span>Automatic</span></button>
                  </li>
                </ul>
              </div>
            </div>
          </div>
          <!--/@site_shared:theme_switcher-->
          <!--@site_shared:site_switcher data={"isFlutter":true}-->
          <div id="site-switcher" class="dropdown" data-expanded="false">
            <button class="dropdown-button text-button icon-button" aria-controls="site-switcher-content" aria-expanded="false" title="Visit related sites."><span class="material-symbols" aria-hidden="true" translate="no">apps</span></button>
            <div id="site-switcher-content" class="dropdown-content">
              <nav class="dropdown-menu" role="menu">
                <ul>
                  <li role="presentation">
                    <a class="site-wordmark" role="menuitem" title="Navigate to the Flutter website." aria-label="Navigate to the Flutter website." href="https://flutter.dev"><img alt="Flutter logo" width="28" src="/assets/images/branding/flutter/logo/default.svg"/><span class="name" translate="no">Flutter</span></a>
                  </li>
                  <li role="presentation">
                    <a class="site-wordmark current-site" role="menuitem" title="Navigate to the Flutter Docs website." aria-label="Navigate to the Flutter Docs website." href="/"><img alt="Flutter logo" width="28" src="/assets/images/branding/flutter/logo/default.svg"/><span class="name" translate="no">Flutter</span><span class="subtype">Docs</span></a>
                  </li>
                  <li role="presentation">
                    <a class="site-wordmark" role="menuitem" title="Navigate to the Flutter API website." aria-label="Navigate to the Flutter API website." href="https://api.flutter.dev"><img alt="Flutter logo" width="28" src="/assets/images/branding/flutter/logo/default.svg"/><span class="name" translate="no">Flutter</span><span class="subtype">API</span></a>
                  </li>
                  <li role="presentation">
                    <a class="site-wordmark" role="menuitem" title="Navigate to the Flutter Blog website." aria-label="Navigate to the Flutter Blog website." href="https://blog.flutter.dev"><img alt="Flutter logo" width="28" src="/assets/images/branding/flutter/logo/default.svg"/><span class="name" translate="no">Flutter</span><span class="subtype">Blog</span></a>
                  </li>
                  <li class="dropdown-divider" aria-hidden="true" role="separator"></li>
                  <li role="presentation">
                    <a class="site-wordmark" role="menuitem" title="Navigate to the Dart website." aria-label="Navigate to the Dart website." href="https://dart.dev"><img alt="Dart logo" width="28" height="28" src="/assets/images/branding/dart/logo.svg"/><span class="name" translate="no">Dart</span></a>
                  </li>
                  <li role="presentation">
                    <a class="site-wordmark" role="menuitem" title="Navigate to the DartPad website." aria-label="Navigate to the DartPad website." href="https://dartpad.dev"><img alt="Dart logo" width="28" height="28" src="/assets/images/branding/dart/logo.svg"/><span class="name" translate="no">DartPad</span></a>
                  </li>
                  <li role="presentation">
                    <a class="site-wordmark" role="menuitem" title="Navigate to the pub.dev website." aria-label="Navigate to the pub.dev website." href="https://pub.dev"><img alt="Dart logo" width="28" height="28" src="/assets/images/branding/dart/logo.svg"/><span class="name" translate="no">pub.dev</span></a>
                  </li>
                </ul>
              </nav>
            </div>
          </div>
          <!--/@site_shared:site_switcher-->
          <a id="call-to-action" class="filled-button" href="/learn/pathway">Get started</a>
          <!--@site_shared:menu_toggle-->
          <button id="menu-toggle" class="icon-button" aria-controls="sidenav" aria-label="Toggle navigation menu." title="Toggle navigation menu." type="button">
            <span class="material-symbols" aria-hidden="true" translate="no">menu</span>
            <span class="material-symbols" aria-hidden="true" translate="no">close</span>
          </button>
          <!--/@site_shared:menu_toggle-->
        </div>
      </nav>
    </header>
    <div id="site-below-header">
      <div id="site-main-row">
        <div id="sidenav">
          <ul class="navbar-nav">
            <li class="nav-item">
              <a class="nav-button active" href="/"><span class="material-symbols" aria-hidden="true" translate="no">asterisk</span>Guides</a>
            </li>
            <li class="nav-item">
              <a class="nav-button" href="/learn/pathway"><span class="material-symbols" aria-hidden="true" translate="no">play_lesson</span>Learn</a>
            </li>
            <li class="nav-item">
              <a class="nav-button" href="/ai/get-started"><span class="material-symbols" aria-hidden="true" translate="no">auto_awesome</span>AI</a>
            </li>
            <li class="nav-item">
              <a class="nav-button" href="https://api.flutter.dev"><span class="material-symbols" aria-hidden="true" translate="no">api</span>Reference</a>
            </li>
            <li aria-hidden="true"><div class="sidenav-divider"></div></li>
          </ul>
          <nav>
            <ul>
              <li class="nav-header">開始使用</li>
              <li class="nav-item"><a class="nav-link" href="/install/quick"><div><span>快速入門</span></div></a></li>
              <li class="nav-item"><a class="nav-link" href="/install/custom"><div><span>自訂安裝</span></div></a></li>
              <li class="nav-item"><a class="nav-link" href="/learn"><div><span>學習 Flutter</span></div></a></li>
              <li aria-hidden="true"><div class="sidenav-divider"></div></li>
              <li class="nav-header">使用者介面</li>
              <li class="nav-item">
                <a class="nav-link" href="/ui"><div><span class="material-symbols leading" aria-hidden="true" translate="no">palette</span><span>簡介</span></div></a>
              </li>
              <li class="nav-item">
                <button class="nav-link collapsible collapsed" data-toggle="collapse" data-target="#sidenav-8" role="button" aria-expanded="false" aria-controls="sidenav-8"><div><span class="material-symbols leading" aria-hidden="true" translate="no">view_module</span><span>元件目錄</span></div><span class="material-symbols expander" aria-hidden="true" translate="no">expand_more</span></button><ul id="sidenav-8" class="nav collapse"><li class="nav-item"><a class="nav-link" href="/ui/widgets"><div><span>總覽</span></div></a></li><li class="nav-item"><button class="nav-link collapsible collapsed" data-toggle="collapse" data-target="#sidenav-8-2" role="button" aria-expanded="false" aria-controls="sidenav-8-2"><div><span>設計系統</span></div><span class="material-symbols expander" aria-hidden="true" translate="no">expand_more</span></button><ul id="sidenav-8-2" class="nav collapse"><li class="nav-item"><a class="nav-link" href="/ui/widgets/cupertino"><div><span>Cupertino</span></div></a></li><li class="nav-item"><a class="nav-link" href="/ui/widgets/material"><div><span>Material</span></div></a></li></ul></li><li class="nav-item"><button class="nav-link collapsible collapsed" data-toggle="collapse" data-target="#sidenav-8-3" role="button" aria-expanded="false" aria-controls="sidenav-8-3"><div><span>基礎元件</span></div><span class="material-symbols expander" aria-hidden="true" translate="no">expand_more</span></button><ul id="sidenav-8-3" class="nav collapse"><li class="nav-item"><a class="nav-link" href="/ui/widgets/accessibility"><div><span>無障礙</span></div></a></li><li class="nav-item"><a class="nav-link" href="/ui/widgets/animation"><div><span>動畫</span></div></a></li><li class="nav-item"><a class="nav-link" href="/ui/widgets/assets"><div><span>資源</span></div></a></li><li class="nav-item"><a class="nav-link" href="/ui/widgets/async"><div><span>非同步</span></div></a></li><li class="nav-item"><a class="nav-link" href="/ui/widgets/basics"><div><span>基礎知識</span></div></a></li><li class="nav-item"><a class="nav-link" href="/ui/widgets/input"><div><span>輸入</span></div></a></li><li class="nav-item"><a class="nav-link" href="/ui/widgets/interaction"><div><span>互動</span></div></a></li><li class="nav-item"><a class="nav-link" href="/ui/widgets/layout"><div><span>版面配置</span></div></a></li><li class="nav-item"><a class="nav-link" href="/ui/widgets/painting"><div><span>繪圖</span></div></a></li><li class="nav-item"><a class="nav-link" href="/ui/widgets/scrolling"><div><span>捲動</span></div></a></li><li class="nav-item"><a class="nav-link" href="/ui/widgets/styling"><div><span>樣式</span></div></a></li><li class="nav-item"><a class="nav-link" href="/ui/widgets/text"><div><span>文字</span></div></a></li></ul></li></ul>
              </li>
              <li class="nav-item">
                <button class="nav-link collapsible collapsed" data-toggle="collapse" data-target="#sidenav-9" role="button" aria-expanded="false" aria-controls="sidenav-9"><div><span class="material-symbols leading" aria-hidden="true" translate="no">view_quilt</span><span>版面配置</span></div><span class="material-symbols expander" aria-hidden="true" translate="no">expand_more</span></button><ul id="sidenav-9" class="nav collapse"><li class="nav-item"><a class="nav-link" href="/ui/layout"><div><span>簡介</span></div></a></li><li class="nav-item"><a class="nav-link" href="/ui/layout/tutorial"><div><span>建置版面配置</span></div></a></li><li class="nav-item"><button class="nav-link collapsible collapsed" data-toggle="collapse" data-target="#sidenav-9-3" role="button" aria-expanded="false" aria-controls="sidenav-9-3"><div><span>清單與格狀</span></div><span class="material-symbols expander" aria-hidden="true" translate="no">expand_more</span></button><ul id="sidenav-9-3" class="nav collapse"><li class="nav-item"><a class="nav-link" href="/cookbook/lists/basic-list"><div><span>建立並使用清單</span></div></a></li><li class="nav-item"><a class="nav-link" href="/cookbook/lists/horizontal-list"><div><span>建立水平清單</span></div></a></li><li class="nav-item"><a class="nav-link" href="/cookbook/lists/grid-lists"><div><span>建立格狀檢視</span></div></a></li><li class="nav-item"><a class="nav-link" href="/cookbook/lists/mixed-list"><div><span>建立包含不同類型項目的清單</span></div></a></li><li class="nav-item"><a class="nav-link" href="/cookbook/lists/spaced-items"><div><span>建立含間距項目的清單</span></div></a></li><li class="nav-item"><a class="nav-link" href="/cookbook/lists/long-lists"><div><span>使用長清單</span></div></a></li></ul></li><li class="nav-item"><button class="nav-link collapsible collapsed" data-toggle="collapse" data-target="#sidenav-9-4" role="button" aria-expanded="false" aria-controls="sidenav-9-4"><div><span>捲動</span></div><span class="material-symbols expander" aria-hidden="true" translate="no">expand_more</span></button><ul id="sidenav-9-4" class="nav collapse"><li class="nav-item"><a class="nav-link" href="/ui/layout/scrolling"><div><span>總覽</span></div></a></li><li class="nav-item"><a class="nav-link" href="/ui/layout/scrolling/slivers"><div><span>使用 Sliver 實現進階捲動</span></div></a></li><li class="nav-item"><a class="nav-link" href="/cookbook/lists/floating-app-bar"><div><span>在清單上方放置浮動應用程式列</span></div></a></li><li class="nav-item"><a class="nav-link" href="/cookbook/effects/parallax-scrolling"><div><span>建立捲動視差效果</span></div></a></li></ul></li></ul>
              </li>
              <li class="nav-item">
                <button class="nav-link collapsible collapsed" data-toggle="collapse" data-target="#sidenav-10" role="button" aria-expanded="false" aria-controls="sidenav-10"><div><span class="material-symbols leading" aria-hidden="true" translate="no">devices</span><span>適應性與響應式設計</span></div><span class="material-symbols expander" aria-hidden="true" translate="no">expand_more</span></button><ul id="sidenav-10" class="nav collapse"><li class="nav-item"><a class="nav-link" href="/ui/adaptive-responsive"><div><span>總覽</span></div></a></li><li class="nav-item"><a class="nav-link" href="/ui/adaptive-responsive/general"><div><span>一般方法</span></div></a></li><li class="nav-item"><a class="nav-link" href="/ui/adaptive-responsive/safearea-mediaquery"><div><span>SafeArea 與 MediaQuery</span></div></a></li><li class="nav-item"><a class="nav-link" href="/ui/adaptive-responsive/large-screens"><div><span>大螢幕與折疊裝置</span></div></a></li><li class="nav-item"><a class="nav-link" href="/ui/adaptive-responsive/input"><div><span>使用者輸入與無障礙</span></div></a></li><li class="nav-item"><a class="nav-link" href="/ui/adaptive-responsive/capabilities"><div><span>功能與政策</span></div></a></li><li class="nav-item"><a class="nav-link" href="/ui/adaptive-responsive/platform-adaptations"><div><span>自動平台適配</span></div></a></li><li class="nav-item"><a class="nav-link" href="/ui/adaptive-responsive/best-practices"><div><span>最佳實踐</span></div></a></li><li class="nav-item"><a class="nav-link" href="/ui/adaptive-responsive/more-info"><div><span>其他資源</span></div></a></li></ul>
              </li>
              <li class="nav-item">
                <button class="nav-link collapsible collapsed" data-toggle="collapse" data-target="#sidenav-11" role="button" aria-expanded="false" aria-controls="sidenav-11"><div><span class="material-symbols leading" aria-hidden="true" translate="no">palette</span><span>設計與主題</span></div><span class="material-symbols expander" aria-hidden="true" translate="no">expand_more</span></button><ul id="sidenav-11" class="nav collapse"><li class="nav-item"><a class="nav-link" href="/cookbook/design/themes"><div><span>使用主題共享樣式</span></div></a></li><li class="nav-item"><a class="nav-link" href="/ui/design/material"><div><span>Material 設計</span></div></a></li><li class="nav-item"><a class="nav-link" href="/ui/design/cupertino"><div><span>Cupertino 設計</span></div></a></li><li class="nav-item"><button class="nav-link collapsible collapsed" data-toggle="collapse" data-target="#sidenav-11-4" role="button" aria-expanded="false" aria-controls="sidenav-11-4"><div><span>文字</span></div><span class="material-symbols expander" aria-hidden="true" translate="no">expand_more</span></button><ul id="sidenav-11-4" class="nav collapse"><li class="nav-item"><a class="nav-link" href="/ui/design/text/typography"><div><span>字型與排版</span></div></a></li><li class="nav-item"><a class="nav-link" href="/cookbook/design/fonts"><div><span>使用自訂字型</span></div></a></li><li class="nav-item"><a class="nav-link" href="/cookbook/design/package-fonts"><div><span>從套件匯出字型</span></div></a></li><li class="nav-item"><a class="nav-link" rel="noopener" href="https://pub.dev/packages/google_fonts" target="_blank"><div><span>Google Fonts 套件</span><span class="material-symbols" aria-hidden="true" translate="no">open_in_new</span></div></a></li></ul></li><li class="nav-item"><button class="nav-link collapsible collapsed" data-toggle="collapse" data-target="#sidenav-11-5" role="button" aria-expanded="false" aria-controls="sidenav-11-5"><div><span>自訂圖形</span></div><span class="material-symbols expander" aria-hidden="true" translate="no">expand_more</span></button><ul id="sidenav-11-5" class="nav collapse"><li class="nav-item"><a class="nav-link" href="/ui/design/graphics/fragment-shaders"><div><span>使用自訂片段著色器</span></div></a></li></ul></li></ul>
              </li>
              <li class="nav-item">
                <button class="nav-link collapsible collapsed" data-toggle="collapse" data-target="#sidenav-12" role="button" aria-expanded="false" aria-controls="sidenav-12"><div><span class="material-symbols leading" aria-hidden="true" translate="no">touch_app</span><span>互動性</span></div><span class="material-symbols expander" aria-hidden="true" translate="no">expand_more</span></button><ul id="sidenav-12" class="nav collapse"><li class="nav-item"><a class="nav-link" href="/ui/interactivity"><div><span>為應用程式加入互動功能</span></div></a></li><li class="nav-item"><button class="nav-link collapsible collapsed" data-toggle="collapse" data-target="#sidenav-12-2" role="button" aria-expanded="false" aria-controls="sidenav-12-2"><div><span>手勢</span></div><span class="material-symbols expander" aria-hidden="true" translate="no">expand_more</span></button><ul id="sidenav-12-2" class="nav collapse"><li class="nav-item"><a class="nav-link" href="/ui/interactivity/gestures"><div><span>簡介</span></div></a></li><li class="nav-item"><a class="nav-link" href="/cookbook/gestures/handling-taps"><div><span>處理點擊</span></div></a></li><li class="nav-item"><a class="nav-link" href="/ui/interactivity/gestures/drag-outside"><div><span>將物件拖曳至應用程式外</span></div></a></li><li class="nav-item"><a class="nav-link" href="/cookbook/effects/drag-a-widget"><div><span>在應用程式內拖曳 UI 元素</span></div></a></li><li class="nav-item"><a class="nav-link" href="/cookbook/gestures/ripples"><div><span>加入 Material 觸控漣漪效果</span></div></a></li><li class="nav-item"><a class="nav-link" href="/cookbook/gestures/dismissible"><div><span>實作滑動關閉</span></div></a></li></ul></li><li class="nav-item"><button class="nav-link collapsible collapsed" data-toggle="collapse" data-target="#sidenav-12-3" role="button" aria-expanded="false" aria-controls="sidenav-12-3"><div><span>輸入與表單</span></div><span class="material-symbols expander" aria-hidden="true" translate="no">expand_more</span></button><ul id="sidenav-12-3" class="nav collapse"><li class="nav-item"><a class="nav-link" href="/cookbook/forms/text-input"><div><span>建立並樣式化文字欄位</span></div></a></li><li class="nav-item"><a class="nav-link" href="/cookbook/forms/retrieve-input"><div><span>取得文字欄位的值</span></div></a></li><li class="nav-item"><a class="nav-link" href="/cookbook/forms/text-field-changes"><div><span>處理文字欄位變更</span></div></a></li><li class="nav-item"><a class="nav-link" href="/cookbook/forms/focus"><div><span>管理文字欄位焦點</span></div></a></li><li class="nav-item"><a class="nav-link" href="/cookbook/forms/validation"><div><span>建置含驗證的表單</span></div></a></li></ul></li><li class="nav-item"><a class="nav-link" href="/cookbook/design/snackbars"><div><span>顯示 Snackbar</span></div></a></li><li class="nav-item"><a class="nav-link" href="/ui/interactivity/actions-and-shortcuts"><div><span>實作動作與快捷鍵</span></div></a></li><li class="nav-item"><a class="nav-link" href="/ui/interactivity/focus"><div><span>管理鍵盤焦點</span></div></a></li></ul>
              </li>
              <li class="nav-item">
                <button class="nav-link collapsible collapsed" data-toggle="collapse" data-target="#sidenav-13" role="button" aria-expanded="false" aria-controls="sidenav-13"><div><span class="material-symbols leading" aria-hidden="true" translate="no">photo_library</span><span>資源與媒體</span></div><span class="material-symbols expander" aria-hidden="true" translate="no">expand_more</span></button><ul id="sidenav-13" class="nav collapse"><li class="nav-item"><a class="nav-link" href="/ui/assets/assets-and-images"><div><span>加入資源與圖片</span></div></a></li><li class="nav-item"><a class="nav-link" href="/cookbook/images/network-image"><div><span>顯示來自網路的圖片</span></div></a></li><li class="nav-item"><a class="nav-link" href="/cookbook/images/fading-in-images"><div><span>使用佔位符淡入圖片</span></div></a></li><li class="nav-item"><a class="nav-link" href="/cookbook/plugins/play-video"><div><span>播放與暫停影片</span></div></a></li><li class="nav-item"><a class="nav-link" href="/ui/assets/asset-transformation"><div><span>在建置時轉換資源</span></div></a></li></ul>
              </li>
              <li class="nav-item">
                <button class="nav-link collapsible collapsed" data-toggle="collapse" data-target="#sidenav-14" role="button" aria-expanded="false" aria-controls="sidenav-14"><div><span class="material-symbols leading" aria-hidden="true" translate="no">alt_route</span><span>導覽與路由</span></div><span class="material-symbols expander" aria-hidden="true" translate="no">expand_more</span></button><ul id="sidenav-14" class="nav collapse"><li class="nav-item"><a class="nav-link" href="/ui/navigation"><div><span>總覽</span></div></a></li><li class="nav-item"><a class="nav-link" href="/cookbook/design/tabs"><div><span>在應用程式中加入頁籤</span></div></a></li><li class="nav-item"><a class="nav-link" href="/cookbook/navigation/navigation-basics"><div><span>導覽至新畫面並返回</span></div></a></li><li class="nav-item"><a class="nav-link" href="/cookbook/navigation/passing-data"><div><span>傳送資料至新畫面</span></div></a></li><li class="nav-item"><a class="nav-link" href="/cookbook/navigation/returning-data"><div><span>從畫面回傳資料</span></div></a></li><li class="nav-item"><a class="nav-link" href="/cookbook/design/drawer"><div><span>在畫面中加入抽屜選單</span></div></a></li><li class="nav-item"><a class="nav-link" href="/cookbook/design/cupertino-sheets"><div><span>顯示 Cupertino 工作表</span></div></a></li><li class="nav-item"><a class="nav-link" href="/ui/navigation/deep-linking"><div><span>設定深層連結</span></div></a></li><li class="nav-item"><a class="nav-link" href="/cookbook/navigation/set-up-app-links"><div><span>設定 Android App Links</span></div></a></li><li class="nav-item"><a class="nav-link" href="/cookbook/navigation/set-up-universal-links"><div><span>設定 iOS Universal Links</span></div></a></li><li class="nav-item"><a class="nav-link" href="/ui/navigation/url-strategies"><div><span>設定 Web URL 策略</span></div></a></li></ul>
              </li>
              <li class="nav-item">
                <button class="nav-link collapsible collapsed" data-toggle="collapse" data-target="#sidenav-15" role="button" aria-expanded="false" aria-controls="sidenav-15"><div><span class="material-symbols leading" aria-hidden="true" translate="no">animation</span><span>動畫與轉場</span></div><span class="material-symbols expander" aria-hidden="true" translate="no">expand_more</span></button><ul id="sidenav-15" class="nav collapse"><li class="nav-item"><a class="nav-link" href="/ui/animations"><div><span>簡介</span></div></a></li><li class="nav-item"><a class="nav-link" href="/ui/animations/tutorial"><div><span>教學</span></div></a></li><li class="nav-item"><a class="nav-link" href="/ui/animations/implicit-animations"><div><span>隱式動畫</span></div></a></li><li class="nav-item"><a class="nav-link" href="/cookbook/animation/animated-container"><div><span>為容器屬性加入動畫</span></div></a></li><li class="nav-item"><a class="nav-link" href="/cookbook/animation/opacity-animation"><div><span>淡入淡出元件</span></div></a></li><li class="nav-item"><a class="nav-link" href="/ui/animations/hero-animations"><div><span>Hero 動畫</span></div></a></li><li class="nav-item"><a class="nav-link" href="/cookbook/animation/page-route-animation"><div><span>為頁面路由轉場加入動畫</span></div></a></li><li class="nav-item"><a class="nav-link" href="/cookbook/animation/physics-simulation"><div><span>使用物理模擬製作動畫</span></div></a></li><li class="nav-item"><a class="nav-link" href="/ui/animations/staggered-animations"><div><span>交錯動畫</span></div></a></li><li class="nav-item"><a class="nav-link" href="/cookbook/effects/staggered-menu-animation"><div><span>建立交錯選單動畫</span></div></a></li><li class="nav-item"><a class="nav-link" href="/ui/animations/overview"><div><span>API 總覽</span></div></a></li></ul>
              </li>
              <li class="nav-item">
                <button class="nav-link collapsible collapsed" data-toggle="collapse" data-target="#sidenav-16" role="button" aria-expanded="false" aria-controls="sidenav-16"><div><span class="material-symbols leading" aria-hidden="true" translate="no">accessibility</span><span>無障礙</span></div><span class="material-symbols expander" aria-hidden="true" translate="no">expand_more</span></button><ul id="sidenav-16" class="nav collapse"><li class="nav-item"><a class="nav-link" href="/ui/accessibility"><div><span>簡介</span></div></a></li><li class="nav-item"><a class="nav-link" href="/ui/accessibility/ui-design-and-styling"><div><span>UI 設計與樣式</span></div></a></li><li class="nav-item"><a class="nav-link" href="/ui/accessibility/assistive-technologies"><div><span>輔助技術</span></div></a></li><li class="nav-item"><a class="nav-link" href="/ui/accessibility/accessibility-testing"><div><span>無障礙測試</span></div></a></li><li class="nav-item"><a class="nav-link" href="/ui/accessibility/web-accessibility"><div><span>Web 無障礙</span></div></a></li></ul>
              </li>
              <li class="nav-item">
                <a class="nav-link" href="/ui/internationalization"><div><span class="material-symbols leading" aria-hidden="true" translate="no">translate</span><span>國際化</span></div></a>
              </li>
              <li aria-hidden="true"><div class="sidenav-divider"></div></li>
              <li class="nav-header">超越 UI</li>
              <li class="nav-item">
                <button class="nav-link collapsible collapsed" data-toggle="collapse" data-target="#sidenav-20" role="button" aria-expanded="false" aria-controls="sidenav-20"><div><span class="material-symbols leading" aria-hidden="true" translate="no">storage</span><span>資料與後端</span></div><span class="material-symbols expander" aria-hidden="true" translate="no">expand_more</span></button><ul id="sidenav-20" class="nav collapse"><li class="nav-item"><button class="nav-link collapsible collapsed" data-toggle="collapse" data-target="#sidenav-20-1" role="button" aria-expanded="false" aria-controls="sidenav-20-1"><div><span>狀態管理</span></div><span class="material-symbols expander" aria-hidden="true" translate="no">expand_more</span></button><ul id="sidenav-20-1" class="nav collapse"><li class="nav-item"><a class="nav-link" href="/data-and-backend/state-mgmt/intro"><div><span>簡介</span></div></a></li><li class="nav-item"><a class="nav-link" href="/data-and-backend/state-mgmt/declarative"><div><span>宣告式思維</span></div></a></li><li class="nav-item"><a class="nav-link" href="/data-and-backend/state-mgmt/ephemeral-vs-app"><div><span>短暫狀態與應用程式狀態</span></div></a></li><li class="nav-item"><a class="nav-link" href="/data-and-backend/state-mgmt/simple"><div><span>簡易應用程式狀態管理</span></div></a></li><li class="nav-item"><a class="nav-link" href="/data-and-backend/state-mgmt/options"><div><span>選項</span></div></a></li></ul></li><li class="nav-item"><button class="nav-link collapsible collapsed" data-toggle="collapse" data-target="#sidenav-20-2" role="button" aria-expanded="false" aria-controls="sidenav-20-2"><div><span>網路與 HTTP</span></div><span class="material-symbols expander" aria-hidden="true" translate="no">expand_more</span></button><ul id="sidenav-20-2" class="nav collapse"><li class="nav-item"><a class="nav-link" href="/data-and-backend/networking"><div><span>總覽</span></div></a></li><li class="nav-item"><a class="nav-link" href="/cookbook/networking/fetch-data"><div><span>從網路擷取資料</span></div></a></li><li class="nav-item"><a class="nav-link" href="/cookbook/networking/authenticated-requests"><div><span>發送已驗證的請求</span></div></a></li><li class="nav-item"><a class="nav-link" href="/cookbook/networking/send-data"><div><span>傳送資料至網路</span></div></a></li><li class="nav-item"><a class="nav-link" href="/cookbook/networking/update-data"><div><span>透過網路更新資料</span></div></a></li><li class="nav-item"><a class="nav-link" href="/cookbook/networking/delete-data"><div><span>在網路上刪除資料</span></div></a></li><li class="nav-item"><a class="nav-link" href="/cookbook/networking/web-sockets"><div><span>使用 WebSocket 通訊</span></div></a></li></ul></li><li class="nav-item"><button class="nav-link collapsible collapsed" data-toggle="collapse" data-target="#sidenav-20-3" role="button" aria-expanded="false" aria-controls="sidenav-20-3"><div><span>序列化</span></div><span class="material-symbols expander" aria-hidden="true" translate="no">expand_more</span></button><ul id="sidenav-20-3" class="nav collapse"><li class="nav-item"><a class="nav-link" href="/data-and-backend/serialization/json"><div><span>JSON 序列化</span></div></a></li><li class="nav-item"><a class="nav-link" href="/cookbook/networking/background-parsing"><div><span>在背景解析 JSON</span></div></a></li></ul></li><li class="nav-item"><button class="nav-link collapsible collapsed" data-toggle="collapse" data-target="#sidenav-20-4" role="button" aria-expanded="false" aria-controls="sidenav-20-4"><div><span>資料持久化</span></div><span class="material-symbols expander" aria-hidden="true" translate="no">expand_more</span></button><ul id="sidenav-20-4" class="nav collapse"><li class="nav-item"><a class="nav-link" href="/data-and-backend/persistence/choose-a-database"><div><span>選擇資料庫</span></div></a></li><li class="nav-item"><a class="nav-link" href="/cookbook/persistence/key-value"><div><span>在磁碟上儲存鍵值資料</span></div></a></li><li class="nav-item"><a class="nav-link" href="/cookbook/persistence/reading-writing-files"><div><span>讀取與寫入檔案</span></div></a></li><li class="nav-item"><a class="nav-link" href="/cookbook/persistence/sqlite"><div><span>使用 SQLite 持久化資料</span></div></a></li></ul></li><li class="nav-item"><button class="nav-link collapsible collapsed" data-toggle="collapse" data-target="#sidenav-20-5" role="button" aria-expanded="false" aria-controls="sidenav-20-5"><div><span>Firebase</span></div><span class="material-symbols expander" aria-hidden="true" translate="no">expand_more</span></button><ul id="sidenav-20-5" class="nav collapse"><li class="nav-item"><a class="nav-link" href="/data-and-backend/firebase"><div><span>總覽</span></div></a></li><li class="nav-item"><a class="nav-link" rel="noopener" href="https://firebase.google.com/docs/flutter/setup" target="_blank"><div><span>在 Flutter 應用程式中加入 Firebase</span><span class="material-symbols" aria-hidden="true" translate="no">open_in_new</span></div></a></li></ul></li><li class="nav-item"><a class="nav-link" href="/data-and-backend/google-apis"><div><span>Google API</span></div></a></li></ul>
              </li>
              <li class="nav-item">
                <button class="nav-link collapsible collapsed" data-toggle="collapse" data-target="#sidenav-21" role="button" aria-expanded="false" aria-controls="sidenav-21"><div><span class="material-symbols leading" aria-hidden="true" translate="no">account_tree</span><span>應用程式架構</span></div><span class="material-symbols expander" aria-hidden="true" translate="no">expand_more</span></button><ul id="sidenav-21" class="nav collapse"><li class="nav-item"><a class="nav-link" href="/app-architecture"><div><span>簡介</span></div></a></li><li class="nav-item"><a class="nav-link" href="/app-architecture/concepts"><div><span>架構概念</span></div></a></li><li class="nav-item"><a class="nav-link" href="/app-architecture/guide"><div><span>應用程式架構指南</span></div></a></li><li class="nav-item"><button class="nav-link collapsible collapsed" data-toggle="collapse" data-target="#sidenav-21-4" role="button" aria-expanded="false" aria-controls="sidenav-21-4"><div><span>架構案例研究</span></div><span class="material-symbols expander" aria-hidden="true" translate="no">expand_more</span></button><ul id="sidenav-21-4" class="nav collapse"><li class="nav-item"><a class="nav-link" href="/app-architecture/case-study"><div><span>總覽</span></div></a></li><li class="nav-item"><a class="nav-link" href="/app-architecture/case-study/ui-layer"><div><span>UI 層</span></div></a></li><li class="nav-item"><a class="nav-link" href="/app-architecture/case-study/data-layer"><div><span>資料層</span></div></a></li><li class="nav-item"><a class="nav-link" href="/app-architecture/case-study/dependency-injection"><div><span>依賴注入</span></div></a></li><li class="nav-item"><a class="nav-link" href="/app-architecture/case-study/testing"><div><span>測試各個層次</span></div></a></li></ul></li><li class="nav-item"><a class="nav-link" href="/app-architecture/recommendations"><div><span>建議</span></div></a></li><li class="nav-item"><a class="nav-link" href="/app-architecture/design-patterns"><div><span>設計模式</span></div></a></li></ul>
              </li>
              <li class="nav-item">
                <button class="nav-link collapsible collapsed" data-toggle="collapse" data-target="#sidenav-22" role="button" aria-expanded="false" aria-controls="sidenav-22"><div><span class="material-symbols leading" aria-hidden="true" translate="no">integration_instructions</span><span>平台整合</span></div><span class="material-symbols expander" aria-hidden="true" translate="no">expand_more</span></button><ul id="sidenav-22" class="nav collapse"><li class="nav-item"><a class="nav-link" href="/reference/supported-platforms"><div><span>支援的平台</span></div></a></li><li class="nav-item"><a class="nav-link" href="/platform-integration/desktop"><div><span>使用 Flutter 建置桌面應用程式</span></div></a></li><li class="nav-item"><a class="nav-link" href="/platform-integration/platform-channels"><div><span>撰寫平台特定程式碼</span></div></a></li><li class="nav-item"><a class="nav-link" href="/platform-integration/bind-native-code"><div><span>綁定原生程式碼</span></div></a></li><li class="nav-item"><button class="nav-link collapsible collapsed" data-toggle="collapse" data-target="#sidenav-22-5" role="button" aria-expanded="false" aria-controls="sidenav-22-5"><div><span>Android</span></div><span class="material-symbols expander" aria-hidden="true" translate="no">expand_more</span></button><ul id="sidenav-22-5" class="nav collapse"><li class="nav-item"><a class="nav-link" href="/platform-integration/android/setup"><div><span>設定 Android 開發環境</span></div></a></li><li class="nav-item"><a class="nav-link" href="/platform-integration/android/splash-screen"><div><span>加入啟動畫面</span></div></a></li><li class="nav-item"><a class="nav-link" href="/platform-integration/android/predictive-back"><div><span>加入預測性返回</span></div></a></li><li class="nav-item"><a class="nav-link" href="/platform-integration/android/platform-views"><div><span>嵌入原生 Android 視圖</span></div></a></li><li class="nav-item"><a class="nav-link" href="/platform-integration/android/call-jetpack-apis"><div><span>呼叫 JetPack API</span></div></a></li><li class="nav-item"><a class="nav-link" href="/platform-integration/android/compose-activity"><div><span>啟動 Jetpack Compose Activity</span></div></a></li><li class="nav-item"><a class="nav-link" href="/platform-integration/android/restore-state-android"><div><span>在 Android 上還原狀態</span></div></a></li><li class="nav-item"><a class="nav-link" href="/platform-integration/android/chromeos"><div><span>以 Android 為目標的 ChromeOS</span></div></a></li><li class="nav-item"><a class="nav-link" href="/platform-integration/android/sensitive-content"><div><span>保護應用程式的敏感內容</span></div></a></li><li class="nav-item"><a class="nav-link" href="/platform-integration/android/local-network-permission"><div><span>請求本地網路權限</span></div></a></li></ul></li><li class="nav-item"><button class="nav-link collapsible collapsed" data-toggle="collapse" data-target="#sidenav-22-6" role="button" aria-expanded="false" aria-controls="sidenav-22-6"><div><span>iOS</span></div><span class="material-symbols expander" aria-hidden="true" translate="no">expand_more</span></button><ul id="sidenav-22-6" class="nav collapse"><li class="nav-item"><a class="nav-link" href="/platform-integration/ios/setup"><div><span>設定 iOS 開發環境</span></div></a></li><li class="nav-item"><a class="nav-link" href="/platform-integration/ios/apple-frameworks"><div><span>使用 Apple 系統函式庫</span></div></a></li><li class="nav-item"><a class="nav-link" href="/platform-integration/ios/launch-screen"><div><span>加入啟動畫面</span></div></a></li><li class="nav-item"><a class="nav-link" href="/platform-integration/ios/ios-app-clip"><div><span>加入 iOS App Clip 支援</span></div></a></li><li class="nav-item"><a class="nav-link" href="/platform-integration/ios/app-extensions"><div><span>加入 iOS 應用程式擴充功能</span></div></a></li><li class="nav-item"><a class="nav-link" href="/platform-integration/ios/platform-views"><div><span>嵌入原生 iOS 視圖</span></div></a></li><li class="nav-item"><a class="nav-link" href="/platform-integration/ios/ios-debugging"><div><span>在 iOS 上啟用除錯</span></div></a></li><li class="nav-item"><a class="nav-link" href="/platform-integration/ios/restore-state-ios"><div><span>在 iOS 上還原狀態</span></div></a></li></ul></li><li class="nav-item"><button class="nav-link collapsible collapsed" data-toggle="collapse" data-target="#sidenav-22-7" role="button" aria-expanded="false" aria-controls="sidenav-22-7"><div><span>Linux</span></div><span class="material-symbols expander" aria-hidden="true" translate="no">expand_more</span></button><ul id="sidenav-22-7" class="nav collapse"><li class="nav-item"><a class="nav-link" href="/platform-integration/linux/setup"><div><span>設定 Linux 開發環境</span></div></a></li><li class="nav-item"><a class="nav-link" href="/platform-integration/linux/building"><div><span>建置 Linux 應用程式</span></div></a></li></ul></li><li class="nav-item"><button class="nav-link collapsible collapsed" data-toggle="collapse" data-target="#sidenav-22-8" role="button" aria-expanded="false" aria-controls="sidenav-22-8"><div><span>macOS</span></div><span class="material-symbols expander" aria-hidden="true" translate="no">expand_more</span></button><ul id="sidenav-22-8" class="nav collapse"><li class="nav-item"><a class="nav-link" href="/platform-integration/macos/setup"><div><span>設定 macOS 開發環境</span></div></a></li><li class="nav-item"><a class="nav-link" href="/platform-integration/macos/building"><div><span>建置 macOS 應用程式</span></div></a></li><li class="nav-item"><a class="nav-link" href="/platform-integration/macos/platform-views"><div><span>嵌入原生 macOS 視圖</span></div></a></li></ul></li><li class="nav-item"><button class="nav-link collapsible collapsed" data-toggle="collapse" data-target="#sidenav-22-9" role="button" aria-expanded="false" aria-controls="sidenav-22-9"><div><span>Web</span></div><span class="material-symbols expander" aria-hidden="true" translate="no">expand_more</span></button><ul id="sidenav-22-9" class="nav collapse"><li class="nav-item"><a class="nav-link" href="/platform-integration/web"><div><span>Flutter 的 Web 支援</span></div></a></li><li class="nav-item"><a class="nav-link" href="/platform-integration/web/setup"><div><span>設定 Web 開發環境</span></div></a></li><li class="nav-item"><a class="nav-link" href="/platform-integration/web/web-dev-config-file"><div><span>設定設定檔</span></div></a></li><li class="nav-item"><a class="nav-link" href="/platform-integration/web/building"><div><span>建置 Web 應用程式</span></div></a></li><li class="nav-item"><a class="nav-link" href="/platform-integration/web/wasm"><div><span>編譯為 WebAssembly</span></div></a></li><li class="nav-item"><a class="nav-link" href="/platform-integration/web/initialization"><div><span>自訂應用程式初始化</span></div></a></li><li class="nav-item"><a class="nav-link" href="/platform-integration/web/embedding-flutter-web"><div><span>將 Flutter 加入任何 Web 應用程式</span></div></a></li><li class="nav-item"><a class="nav-link" href="/platform-integration/web/web-content-in-flutter"><div><span>Flutter 中的 Web 內容</span></div></a></li><li class="nav-item"><a class="nav-link" href="/platform-integration/web/web-images"><div><span>在 Web 上顯示圖片</span></div></a></li><li class="nav-item"><a class="nav-link" href="/platform-integration/web/faq"><div><span>Web 常見問題</span></div></a></li></ul></li><li class="nav-item"><button class="nav-link collapsible collapsed" data-toggle="collapse" data-target="#sidenav-22-10" role="button" aria-expanded="false" aria-controls="sidenav-22-10"><div><span>Windows</span></div><span class="material-symbols expander" aria-hidden="true" translate="no">expand_more</span></button><ul id="sidenav-22-10" class="nav collapse"><li class="nav-item"><a class="nav-link" href="/platform-integration/windows/setup"><div><span>設定 Windows 開發環境</span></div></a></li><li class="nav-item"><a class="nav-link" href="/platform-integration/windows/building"><div><span>建置 Windows 應用程式</span></div></a></li></ul></li></ul>
              </li>
              <li class="nav-item">
                <button class="nav-link collapsible collapsed" data-toggle="collapse" data-target="#sidenav-23" role="button" aria-expanded="false" aria-controls="sidenav-23"><div><span class="material-symbols leading" aria-hidden="true" translate="no">extension</span><span>套件與插件</span></div><span class="material-symbols expander" aria-hidden="true" translate="no">expand_more</span></button><ul id="sidenav-23" class="nav collapse"><li class="nav-item"><a class="nav-link" href="/packages-and-plugins/using-packages"><div><span>使用套件與插件</span></div></a></li><li class="nav-item"><a class="nav-link" href="/packages-and-plugins/dependency-management"><div><span>套件相依性管理</span></div></a></li><li class="nav-item"><a class="nav-link" href="/packages-and-plugins/developing-packages"><div><span>開發套件與插件</span></div></a></li><li class="nav-item"><a class="nav-link" rel="noopener" href="https://dart.dev/tools/pub/package-skills" target="_blank"><div><span>在套件中提供技能</span><span class="material-symbols" aria-hidden="true" translate="no">open_in_new</span></div></a></li><li class="nav-item"><button class="nav-link collapsible collapsed" data-toggle="collapse" data-target="#sidenav-23-5" role="button" aria-expanded="false" aria-controls="sidenav-23-5"><div><span>Swift Package Manager</span></div><span class="material-symbols expander" aria-hidden="true" translate="no">expand_more</span></button><ul id="sidenav-23-5" class="nav collapse"><li class="nav-item"><a class="nav-link" href="/packages-and-plugins/swift-package-manager/for-app-developers"><div><span>給應用程式開發者</span></div></a></li><li class="nav-item"><a class="nav-link" href="/packages-and-plugins/swift-package-manager/for-plugin-authors"><div><span>給插件作者</span></div></a></li></ul></li><li aria-hidden="true"><div class="sidenav-divider"></div></li><li class="nav-item"><a class="nav-link" href="/packages-and-plugins/favorites"><div><span>Flutter Favorites</span></div></a></li><li class="nav-item"><a class="nav-link" rel="noopener" href="https://pub.dev/flutter" target="_blank"><div><span>套件儲存庫</span><span class="material-symbols" aria-hidden="true" translate="no">open_in_new</span></div></a></li></ul>
              </li>
              <li class="nav-item">
                <button class="nav-link collapsible collapsed" data-toggle="collapse" data-target="#sidenav-24" role="button" aria-expanded="false" aria-controls="sidenav-24"><div><span class="material-symbols leading" aria-hidden="true" translate="no">bug_report</span><span>測試與除錯</span></div><span class="material-symbols expander" aria-hidden="true" translate="no">expand_more</span></button><ul id="sidenav-24" class="nav collapse"><li class="nav-header">測試</li><li class="nav-item"><a class="nav-link" href="/testing/overview"><div><span>總覽</span></div></a></li><li class="nav-item"><button class="nav-link collapsible collapsed" data-toggle="collapse" data-target="#sidenav-24-3" role="button" aria-expanded="false" aria-controls="sidenav-24-3"><div><span>單元測試</span></div><span class="material-symbols expander" aria-hidden="true" translate="no">expand_more</span></button><ul id="sidenav-24-3" class="nav collapse"><li class="nav-item"><a class="nav-link" href="/cookbook/testing/unit/introduction"><div><span>簡介</span></div></a></li><li class="nav-item"><a class="nav-link" href="/cookbook/testing/unit/mocking"><div><span>模擬依賴</span></div></a></li></ul></li><li class="nav-item"><button class="nav-link collapsible collapsed" data-toggle="collapse" data-target="#sidenav-24-4" role="button" aria-expanded="false" aria-controls="sidenav-24-4"><div><span>元件測試</span></div><span class="material-symbols expander" aria-hidden="true" translate="no">expand_more</span></button><ul id="sidenav-24-4" class="nav collapse"><li class="nav-item"><a class="nav-link" href="/cookbook/testing/widget/introduction"><div><span>簡介</span></div></a></li><li class="nav-item"><a class="nav-link" href="/cookbook/testing/widget/finders"><div><span>尋找元件</span></div></a></li><li class="nav-item"><a class="nav-link" href="/cookbook/testing/widget/scrolling"><div><span>模擬捲動</span></div></a></li><li class="nav-item"><a class="nav-link" href="/cookbook/testing/widget/tap-drag"><div><span>模擬使用者互動</span></div></a></li></ul></li><li class="nav-item"><button class="nav-link collapsible collapsed" data-toggle="collapse" data-target="#sidenav-24-5" role="button" aria-expanded="false" aria-controls="sidenav-24-5"><div><span>整合測試</span></div><span class="material-symbols expander" aria-hidden="true" translate="no">expand_more</span></button><ul id="sidenav-24-5" class="nav collapse"><li class="nav-item"><a class="nav-link" href="/cookbook/testing/integration/introduction"><div><span>簡介</span></div></a></li><li class="nav-item"><a class="nav-link" href="/testing/integration-tests"><div><span>撰寫並執行整合測試</span></div></a></li><li class="nav-item"><a class="nav-link" href="/cookbook/testing/integration/profiling"><div><span>分析整合測試效能</span></div></a></li></ul></li><li class="nav-item"><a class="nav-link" href="/testing/testing-plugins"><div><span>測試插件</span></div></a></li><li class="nav-item"><a class="nav-link" href="/testing/plugins-in-tests"><div><span>在測試中處理插件程式碼</span></div></a></li><li class="nav-header">除錯</li><li class="nav-item"><a class="nav-link" href="/testing/debugging"><div><span>除錯工具</span></div></a></li><li class="nav-item"><a class="nav-link" href="/testing/code-debugging"><div><span>以程式方式除錯應用程式</span></div></a></li><li class="nav-item"><a class="nav-link" href="/testing/native-debugging"><div><span>使用原生語言除錯器</span></div></a></li><li class="nav-item"><a class="nav-link" href="/testing/common-errors"><div><span>常見 Flutter 錯誤</span></div></a></li><li class="nav-item"><a class="nav-link" href="/testing/errors"><div><span>處理錯誤</span></div></a></li><li class="nav-item"><a class="nav-link" href="/cookbook/maintenance/error-reporting"><div><span>向服務回報錯誤</span></div></a></li></ul>
              </li>
              <li class="nav-item">
                <button class="nav-link collapsible collapsed" data-toggle="collapse" data-target="#sidenav-25" role="button" aria-expanded="false" aria-controls="sidenav-25"><div><span class="material-symbols leading" aria-hidden="true" translate="no">speed</span><span>效能與最佳化</span></div><span class="material-symbols expander" aria-hidden="true" translate="no">expand_more</span></button><ul id="sidenav-25" class="nav collapse"><li class="nav-item"><a class="nav-link" href="/perf"><div><span>總覽</span></div></a></li><li class="nav-item"><a class="nav-link" href="/perf/impeller"><div><span>Impeller</span></div></a></li><li class="nav-item"><a class="nav-link" href="/perf/antialiasing"><div><span>Impeller 反鋸齒</span></div></a></li><li class="nav-item"><a class="nav-link" href="/perf/best-practices"><div><span>效能最佳實踐</span></div></a></li><li class="nav-item"><a class="nav-link" href="/perf/app-size"><div><span>應用程式大小</span></div></a></li><li class="nav-item"><a class="nav-link" href="/perf/deferred-components"><div><span>延遲載入元件</span></div></a></li><li class="nav-item"><a class="nav-link" href="/perf/rendering-performance"><div><span>渲染效能</span></div></a></li><li class="nav-item"><a class="nav-link" href="/perf/ui-performance"><div><span>效能分析</span></div></a></li><li class="nav-item"><a class="nav-link" href="/perf/web-performance"><div><span>Web 效能分析</span></div></a></li><li class="nav-item"><a class="nav-link" href="/perf/metrics"><div><span>效能指標</span></div></a></li><li class="nav-item"><a class="nav-link" href="/perf/isolates"><div><span>並發與 isolates</span></div></a></li><li class="nav-item"><a class="nav-link" href="/perf/faq"><div><span>效能常見問題</span></div></a></li><li class="nav-item"><a class="nav-link" href="/perf/appendix"><div><span>附錄</span></div></a></li></ul>
              </li>
              <li class="nav-item">
                <button class="nav-link collapsible collapsed" data-toggle="collapse" data-target="#sidenav-26" role="button" aria-expanded="false" aria-controls="sidenav-26"><div><span class="material-symbols leading" aria-hidden="true" translate="no">rocket_launch</span><span>部署</span></div><span class="material-symbols expander" aria-hidden="true" translate="no">expand_more</span></button><ul id="sidenav-26" class="nav collapse"><li class="nav-item"><a class="nav-link" href="/deployment/obfuscate"><div><span>混淆 Dart 程式碼</span></div></a></li><li class="nav-item"><a class="nav-link" href="/deployment/flavors"><div><span>為 Android 建立應用程式風味</span></div></a></li><li class="nav-item"><a class="nav-link" href="/deployment/flavors-ios"><div><span>為 iOS 與 macOS 建立應用程式風味</span></div></a></li><li class="nav-item"><a class="nav-link" href="/deployment/flavors-linux"><div><span>為 Linux 建立應用程式 flavor</span></div></a></li><li class="nav-item"><a class="nav-link" href="/deployment/flavors-windows"><div><span>為 Windows 建立應用程式 flavor</span></div></a></li><li class="nav-item"><a class="nav-link" href="/deployment/android"><div><span>建置並發布 Android 應用程式</span></div></a></li><li class="nav-item"><a class="nav-link" href="/deployment/ios"><div><span>建置並發布 iOS 應用程式</span></div></a></li><li class="nav-item"><a class="nav-link" href="/deployment/macos"><div><span>建置並發布 macOS 應用程式</span></div></a></li><li class="nav-item"><a class="nav-link" href="/deployment/linux"><div><span>建置並發布 Linux 應用程式</span></div></a></li><li class="nav-item"><a class="nav-link" href="/deployment/windows"><div><span>建置並發布 Windows 應用程式</span></div></a></li><li class="nav-item"><a class="nav-link" href="/deployment/web"><div><span>建置並發布 Web 應用程式</span></div></a></li><li class="nav-item"><a class="nav-link" href="/deployment/cd"><div><span>設定持續部署</span></div></a></li></ul>
              </li>
              <li class="nav-item">
                <button class="nav-link collapsible collapsed" data-toggle="collapse" data-target="#sidenav-27" role="button" aria-expanded="false" aria-controls="sidenav-27"><div><span class="material-symbols leading" aria-hidden="true" translate="no">add_circle</span><span>加入現有應用程式</span></div><span class="material-symbols expander" aria-hidden="true" translate="no">expand_more</span></button><ul id="sidenav-27" class="nav collapse"><li class="nav-item"><a class="nav-link" href="/add-to-app"><div><span>簡介</span></div></a></li><li class="nav-item"><button class="nav-link collapsible collapsed" data-toggle="collapse" data-target="#sidenav-27-2" role="button" aria-expanded="false" aria-controls="sidenav-27-2"><div><span>加入 Android 應用程式</span></div><span class="material-symbols expander" aria-hidden="true" translate="no">expand_more</span></button><ul id="sidenav-27-2" class="nav collapse"><li class="nav-item"><a class="nav-link" href="/add-to-app/android/project-setup"><div><span>設定 Android 專案</span></div></a></li><li class="nav-item"><a class="nav-link" href="/add-to-app/android/add-flutter-screen"><div><span>加入單一 Flutter 畫面</span></div></a></li><li class="nav-item"><a class="nav-link" href="/add-to-app/android/add-flutter-fragment"><div><span>加入 Flutter Fragment</span></div></a></li><li class="nav-item"><a class="nav-link" href="/add-to-app/android/add-flutter-view"><div><span>加入 Flutter View</span></div></a></li><li class="nav-item"><a class="nav-link" href="/add-to-app/android/plugin-setup"><div><span>使用 Flutter 插件</span></div></a></li></ul></li><li class="nav-item"><button class="nav-link collapsible collapsed" data-toggle="collapse" data-target="#sidenav-27-3" role="button" aria-expanded="false" aria-controls="sidenav-27-3"><div><span>加入 iOS 應用程式</span></div><span class="material-symbols expander" aria-hidden="true" translate="no">expand_more</span></button><ul id="sidenav-27-3" class="nav collapse"><li class="nav-item"><a class="nav-link" href="/add-to-app/ios/project-setup"><div><span>設定 iOS 專案</span></div></a></li><li class="nav-item"><a class="nav-link" href="/add-to-app/ios/add-flutter-screen"><div><span>加入單一 Flutter 畫面</span></div></a></li></ul></li><li class="nav-item"><button class="nav-link collapsible collapsed" data-toggle="collapse" data-target="#sidenav-27-4" role="button" aria-expanded="false" aria-controls="sidenav-27-4"><div><span>加入 macOS 應用程式</span></div><span class="material-symbols expander" aria-hidden="true" translate="no">expand_more</span></button><ul id="sidenav-27-4" class="nav collapse"><li class="nav-item"><a class="nav-link" href="/add-to-app/macos/project-setup"><div><span>設定 macOS 專案</span></div></a></li><li class="nav-item"><a class="nav-link" href="/add-to-app/macos/add-flutter-screen"><div><span>加入單一 Flutter 畫面</span></div></a></li></ul></li><li class="nav-item"><a class="nav-link" href="/platform-integration/web/embedding-flutter-web"><div><span>加入 Web 應用程式</span></div></a></li><li class="nav-item"><a class="nav-link" href="/add-to-app/debugging"><div><span>除錯嵌入式 Flutter 模組</span></div></a></li><li class="nav-item"><a class="nav-link" href="/add-to-app/multiple-flutters"><div><span>加入多個 Flutter 實例</span></div></a></li><li class="nav-item"><a class="nav-link" href="/add-to-app/performance"><div><span>載入順序與效能</span></div></a></li></ul>
              </li>
              <li aria-hidden="true"><div class="sidenav-divider"></div></li>
              <li class="nav-header">AI</li>
              <li class="nav-item">
                <button class="nav-link collapsible collapsed" data-toggle="collapse" data-target="#sidenav-30" role="button" aria-expanded="false" aria-controls="sidenav-30"><div><span class="material-symbols leading" aria-hidden="true" translate="no">smart_toy</span><span>使用 AI 開發</span></div><span class="material-symbols expander" aria-hidden="true" translate="no">expand_more</span></button><ul id="sidenav-30" class="nav collapse"><li class="nav-item"><a class="nav-link" href="/ai/get-started"><div><span>開始使用</span></div></a></li><li class="nav-item"><a class="nav-link" href="/ai/tools"><div><span>AI 工具的運作方式</span></div></a></li><li class="nav-item"><a class="nav-link" rel="noopener" href="https://dart.dev/ai/package-skills" target="_blank"><div><span>打包技能</span><span class="material-symbols" aria-hidden="true" translate="no">open_in_new</span></div></a></li></ul>
              </li>
              <li class="nav-item">
                <button class="nav-link collapsible collapsed" data-toggle="collapse" data-target="#sidenav-31" role="button" aria-expanded="false" aria-controls="sidenav-31"><div><span class="material-symbols leading" aria-hidden="true" translate="no">auto_awesome</span><span>建置 AI 驅動應用程式</span></div><span class="material-symbols expander" aria-hidden="true" translate="no">expand_more</span></button><ul id="sidenav-31" class="nav collapse"><li class="nav-item"><a class="nav-link" rel="noopener" href="https://firebase.google.com/docs/ai-logic/get-started?platform=flutter" target="_blank"><div><span>Firebase AI Logic</span><span class="material-symbols" aria-hidden="true" translate="no">open_in_new</span></div></a></li><li class="nav-item"><a class="nav-link" rel="noopener" href="https://genkit.dev/docs/dart/get-started" target="_blank"><div><span>Genkit Dart</span><span class="material-symbols" aria-hidden="true" translate="no">open_in_new</span></div></a></li><li class="nav-item"><button class="nav-link collapsible collapsed" data-toggle="collapse" data-target="#sidenav-31-3" role="button" aria-expanded="false" aria-controls="sidenav-31-3"><div><span>Flutter 的 GenUI SDK</span></div><span class="material-symbols expander" aria-hidden="true" translate="no">expand_more</span></button><ul id="sidenav-31-3" class="nav collapse"><li class="nav-item"><a class="nav-link" href="/ai/genui"><div><span>總覽</span></div></a></li><li class="nav-item"><a class="nav-link" href="/ai/genui/components"><div><span>主要元件與概念</span></div></a></li><li class="nav-item"><a class="nav-link" href="/ai/genui/get-started"><div><span>開始使用</span></div></a></li><li class="nav-item"><a class="nav-link" href="/ai/genui/input-events"><div><span>輸入與事件</span></div></a></li></ul></li><li class="nav-item"><button class="nav-link collapsible collapsed" data-toggle="collapse" data-target="#sidenav-31-4" role="button" aria-expanded="false" aria-controls="sidenav-31-4"><div><span>Flutter AI Toolkit</span></div><span class="material-symbols expander" aria-hidden="true" translate="no">expand_more</span></button><ul id="sidenav-31-4" class="nav collapse"><li class="nav-item"><a class="nav-link" href="/ai/ai-toolkit"><div><span>總覽</span></div></a></li><li class="nav-item"><a class="nav-link" href="/ai/ai-toolkit/user-experience"><div><span>使用者體驗</span></div></a></li><li class="nav-item"><a class="nav-link" href="/ai/ai-toolkit/feature-integration"><div><span>功能整合</span></div></a></li><li class="nav-item"><a class="nav-link" href="/ai/ai-toolkit/custom-llm-providers"><div><span>自訂 LLM 提供商</span></div></a></li><li class="nav-item"><a class="nav-link" href="/ai/ai-toolkit/chat-client-sample"><div><span>聊天客戶端範例</span></div></a></li></ul></li><li class="nav-item"><button class="nav-link collapsible collapsed" data-toggle="collapse" data-target="#sidenav-31-5" role="button" aria-expanded="false" aria-controls="sidenav-31-5"><div><span>AI 最佳實踐</span></div><span class="material-symbols expander" aria-hidden="true" translate="no">expand_more</span></button><ul id="sidenav-31-5" class="nav collapse"><li class="nav-item"><a class="nav-link" href="/ai/best-practices"><div><span>總覽</span></div></a></li><li class="nav-item"><a class="nav-link" href="/ai/best-practices/prompting"><div><span>提示詞</span></div></a></li><li class="nav-item"><a class="nav-link" href="/ai/best-practices/structure-output"><div><span>結構與輸出</span></div></a></li><li class="nav-item"><a class="nav-link" href="/ai/best-practices/tool-calls"><div><span>工具呼叫（即函式呼叫）</span></div></a></li><li class="nav-item"><a class="nav-link" href="/ai/best-practices/mode-of-interaction"><div><span>互動模式</span></div></a></li></ul></li></ul>
              </li>
              <li aria-hidden="true"><div class="sidenav-divider"></div></li>
              <li class="nav-header">資源</li>
              <li class="nav-item">
                <button class="nav-link collapsible collapsed" data-toggle="collapse" data-target="#sidenav-34" role="button" aria-expanded="false" aria-controls="sidenav-34"><div><span class="material-symbols leading" aria-hidden="true" translate="no">construction</span><span>工具與編輯器</span></div><span class="material-symbols expander" aria-hidden="true" translate="no">expand_more</span></button><ul id="sidenav-34" class="nav collapse"><li class="nav-item"><a class="nav-link" href="/tools/android-studio"><div><span>Android Studio 與 IntelliJ</span></div></a></li><li class="nav-item"><a class="nav-link" href="/tools/vs-code"><div><span>Visual Studio Code</span></div></a></li><li class="nav-item"><button class="nav-link collapsible collapsed" data-toggle="collapse" data-target="#sidenav-34-3" role="button" aria-expanded="false" aria-controls="sidenav-34-3"><div><span>DevTools</span></div><span class="material-symbols expander" aria-hidden="true" translate="no">expand_more</span></button><ul id="sidenav-34-3" class="nav collapse"><li class="nav-item"><a class="nav-link" href="/tools/devtools"><div><span>總覽</span></div></a></li><li class="nav-item"><a class="nav-link" href="/tools/devtools/android-studio"><div><span>從 Android Studio 與 IntelliJ 執行</span></div></a></li><li class="nav-item"><a class="nav-link" href="/tools/devtools/vscode"><div><span>從 VS Code 執行</span></div></a></li><li class="nav-item"><a class="nav-link" href="/tools/devtools/cli"><div><span>從命令列執行</span></div></a></li><li class="nav-item"><a class="nav-link" href="/tools/devtools/inspector"><div><span>Flutter 檢查器</span></div></a></li><li class="nav-item"><a class="nav-link" href="/tools/devtools/performance"><div><span>效能檢視</span></div></a></li><li class="nav-item"><a class="nav-link" href="/tools/devtools/cpu-profiler"><div><span>CPU 分析器檢視</span></div></a></li><li class="nav-item"><a class="nav-link" href="/tools/devtools/memory"><div><span>記憶體檢視</span></div></a></li><li class="nav-item"><a class="nav-link" href="/tools/devtools/console"><div><span>除錯主控台檢視</span></div></a></li><li class="nav-item"><a class="nav-link" href="/tools/devtools/network"><div><span>網路檢視</span></div></a></li><li class="nav-item"><a class="nav-link" href="/tools/devtools/debugger"><div><span>除錯器</span></div></a></li><li class="nav-item"><a class="nav-link" href="/tools/devtools/logging"><div><span>日誌檢視</span></div></a></li><li class="nav-item"><a class="nav-link" href="/tools/devtools/app-size"><div><span>應用程式大小工具</span></div></a></li><li class="nav-item"><a class="nav-link" href="/tools/devtools/extensions"><div><span>DevTools 擴充功能</span></div></a></li><li class="nav-item"><a class="nav-link" href="/tools/devtools/custom-tool"><div><span>建置自訂工具</span></div></a></li><li class="nav-item"><a class="nav-link" href="/tools/devtools/deep-links"><div><span>驗證深層連結</span></div></a></li><li class="nav-item"><a class="nav-link" href="/tools/devtools/release-notes"><div><span>版本說明</span></div></a></li></ul></li><li class="nav-item"><a class="nav-link" href="/tools/widget-previewer"><div><span>Flutter 元件預覽器</span></div></a></li><li class="nav-item"><a class="nav-link" href="/tools/property-editor"><div><span>Flutter 屬性編輯器</span></div></a></li><li class="nav-item"><a class="nav-link" href="/tools/sdk"><div><span>SDK 總覽</span></div></a></li><li class="nav-item"><a class="nav-link" href="/tools/pubspec"><div><span>Flutter pubspec 選項</span></div></a></li><li class="nav-item"><a class="nav-link" href="/tools/flutter-fix"><div><span>自動修正</span></div></a></li><li class="nav-item"><a class="nav-link" href="/tools/formatting"><div><span>程式碼格式化</span></div></a></li></ul>
              </li>
              <li class="nav-item">
                <button class="nav-link collapsible collapsed" data-toggle="collapse" data-target="#sidenav-35" role="button" aria-expanded="false" aria-controls="sidenav-35"><div><span class="material-symbols leading" aria-hidden="true" translate="no">lightbulb</span><span>Flutter 概念</span></div><span class="material-symbols expander" aria-hidden="true" translate="no">expand_more</span></button><ul id="sidenav-35" class="nav collapse"><li class="nav-item"><a class="nav-link" href="/resources/architectural-overview"><div><span>架構總覽</span></div></a></li><li class="nav-item"><a class="nav-link" href="/resources/inside-flutter"><div><span>Flutter 內部</span></div></a></li><li class="nav-item"><a class="nav-link" href="/ui/layout/constraints"><div><span>理解約束</span></div></a></li><li class="nav-item"><a class="nav-link" href="/testing/build-modes"><div><span>Flutter 建置模式</span></div></a></li><li class="nav-item"><a class="nav-link" href="/tools/hot-reload"><div><span>熱重載</span></div></a></li><li class="nav-item"><a class="nav-link" href="/ui/dot-shorthands"><div><span>點縮寫語法</span></div></a></li></ul>
              </li>
              <li class="nav-item">
                <button class="nav-link collapsible collapsed" data-toggle="collapse" data-target="#sidenav-36" role="button" aria-expanded="false" aria-controls="sidenav-36"><div><span class="material-symbols leading" aria-hidden="true" translate="no">apps</span><span>應用程式解決方案</span></div><span class="material-symbols expander" aria-hidden="true" translate="no">expand_more</span></button><ul id="sidenav-36" class="nav collapse"><li class="nav-item"><button class="nav-link collapsible collapsed" data-toggle="collapse" data-target="#sidenav-36-1" role="button" aria-expanded="false" aria-controls="sidenav-36-1"><div><span>使用 Firebase 開發</span></div><span class="material-symbols expander" aria-hidden="true" translate="no">expand_more</span></button><ul id="sidenav-36-1" class="nav collapse"><li class="nav-item"><a class="nav-link" href="/data-and-backend/firebase"><div><span>總覽</span></div></a></li><li class="nav-item"><a class="nav-link" rel="noopener" href="https://firebase.google.com/docs/flutter" target="_blank"><div><span>探索 Flutter 的 Firebase</span><span class="material-symbols" aria-hidden="true" translate="no">open_in_new</span></div></a></li><li class="nav-item"><a class="nav-link" rel="noopener" href="https://www.youtube.com/watch?v=wUSkeTaBonA" target="_blank"><div><span>認識 Flutter 的 Firebase</span><span class="material-symbols" aria-hidden="true" translate="no">open_in_new</span></div></a></li><li class="nav-item"><a class="nav-link" rel="noopener" href="https://firebase.google.com/codelabs/firebase-auth-in-flutter-apps" target="_blank"><div><span>使用 FirebaseUI 在 Flutter 應用程式中加入使用者驗證流程</span><span class="material-symbols" aria-hidden="true" translate="no">open_in_new</span></div></a></li><li class="nav-item"><a class="nav-link" rel="noopener" href="https://firebase.google.com/codelabs/firebase-get-to-know-web" target="_blank"><div><span>認識 Web 的 Firebase</span><span class="material-symbols" aria-hidden="true" translate="no">open_in_new</span></div></a></li></ul></li><li class="nav-item"><button class="nav-link collapsible collapsed" data-toggle="collapse" data-target="#sidenav-36-2" role="button" aria-expanded="false" aria-controls="sidenav-36-2"><div><span>建置跨平台遊戲</span></div><span class="material-symbols expander" aria-hidden="true" translate="no">expand_more</span></button><ul id="sidenav-36-2" class="nav collapse"><li class="nav-item"><a class="nav-link" href="/resources/games-toolkit"><div><span>總覽</span></div></a></li><li class="nav-item"><a class="nav-link" href="/cookbook/games/achievements-leaderboard"><div><span>加入成就與排行榜</span></div></a></li><li class="nav-item"><a class="nav-link" rel="noopener" href="https://firebase.google.com/codelabs/build-leaderboards-with-firestore#0" target="_blank"><div><span>使用 Firestore 建置排行榜</span><span class="material-symbols" aria-hidden="true" translate="no">open_in_new</span></div></a></li><li class="nav-item"><a class="nav-link" href="/cookbook/plugins/google-mobile-ads"><div><span>加入廣告</span></div></a></li><li class="nav-item"><a class="nav-link" href="/cookbook/games/firestore-multiplayer"><div><span>加入多人遊戲支援</span></div></a></li><li class="nav-item"><a class="nav-link" rel="noopener" href="https://codelabs.developers.google.com/codelabs/flutter-in-app-purchases" target="_blank"><div><span>加入應用程式內購</span><span class="material-symbols" aria-hidden="true" translate="no">open_in_new</span></div></a></li><li class="nav-item"><a class="nav-link" rel="noopener" href="https://firebase.google.com/codelabs/firebase-auth-in-flutter-apps" target="_blank"><div><span>加入使用者驗證</span><span class="material-symbols" aria-hidden="true" translate="no">open_in_new</span></div></a></li><li class="nav-item"><a class="nav-link" rel="noopener" href="https://firebase.google.com/docs/crashlytics/get-started?platform=flutter" target="_blank"><div><span>使用 Crashlytics 除錯</span><span class="material-symbols" aria-hidden="true" translate="no">open_in_new</span></div></a></li><li class="nav-item"><a class="nav-link" rel="noopener" href="https://codelabs.developers.google.com/codelabs/flutter-flame-brick-breaker" target="_blank"><div><span>Flutter 搭配 Flame 入門</span><span class="material-symbols" aria-hidden="true" translate="no">open_in_new</span></div></a></li></ul></li><li class="nav-item"><button class="nav-link collapsible collapsed" data-toggle="collapse" data-target="#sidenav-36-3" role="button" aria-expanded="false" aria-controls="sidenav-36-3"><div><span>應用程式商業化</span></div><span class="material-symbols expander" aria-hidden="true" translate="no">expand_more</span></button><ul id="sidenav-36-3" class="nav collapse"><li class="nav-item"><button class="nav-link collapsible collapsed" data-toggle="collapse" data-target="#sidenav-36-3-1" role="button" aria-expanded="false" aria-controls="sidenav-36-3-1"><div><span>整合廣告</span></div><span class="material-symbols expander" aria-hidden="true" translate="no">expand_more</span></button><ul id="sidenav-36-3-1" class="nav collapse"><li class="nav-item"><a class="nav-link" href="/resources/ads-overview"><div><span>廣告總覽</span></div></a></li><li class="nav-item"><a class="nav-link" href="/cookbook/plugins/google-mobile-ads"><div><span>加入廣告</span></div></a></li><li class="nav-item"><a class="nav-link" rel="noopener" href="https://codelabs.developers.google.com/codelabs/admob-ads-in-flutter" target="_blank"><div><span>在 Flutter 應用程式中加入 AdMob 廣告</span><span class="material-symbols" aria-hidden="true" translate="no">open_in_new</span></div></a></li><li class="nav-item"><a class="nav-link" rel="noopener" href="https://codelabs.developers.google.com/codelabs/admob-inline-ads-in-flutter" target="_blank"><div><span>加入 AdMob 橫幅與原生內嵌廣告</span><span class="material-symbols" aria-hidden="true" translate="no">open_in_new</span></div></a></li><li class="nav-item"><a class="nav-link" rel="noopener" href="https://www.youtube.com/watch?v=U8x5n6RwZOo" target="_blank"><div><span>整合多媒體廣告（影片）</span><span class="material-symbols" aria-hidden="true" translate="no">open_in_new</span></div></a></li><li class="nav-item"><a class="nav-link" rel="noopener" href="https://developers.google.com/admob/flutter/mediation" target="_blank"><div><span>Google AdMob 中介</span><span class="material-symbols" aria-hidden="true" translate="no">open_in_new</span></div></a></li><li class="nav-item"><a class="nav-link" rel="noopener" href="https://pub.dev/packages/interactive_media_ads" target="_blank"><div><span>Interactive Media Ads SDK</span><span class="material-symbols" aria-hidden="true" translate="no">open_in_new</span></div></a></li></ul></li><li class="nav-item"><button class="nav-link collapsible collapsed" data-toggle="collapse" data-target="#sidenav-36-3-2" role="button" aria-expanded="false" aria-controls="sidenav-36-3-2"><div><span>支援付款</span></div><span class="material-symbols expander" aria-hidden="true" translate="no">expand_more</span></button><ul id="sidenav-36-3-2" class="nav collapse"><li class="nav-item"><a class="nav-link" href="/resources/payments-overview"><div><span>付款總覽</span></div></a></li><li class="nav-item"><a class="nav-link" rel="noopener" href="https://pub.dev/packages/pay" target="_blank"><div><span>Google Pay 套件</span><span class="material-symbols" aria-hidden="true" translate="no">open_in_new</span></div></a></li></ul></li><li class="nav-item"><a class="nav-link" rel="noopener" href="https://codelabs.developers.google.com/codelabs/flutter-in-app-purchases" target="_blank"><div><span>加入應用程式內購</span><span class="material-symbols" aria-hidden="true" translate="no">open_in_new</span></div></a></li></ul></li><li class="nav-item"><button class="nav-link collapsible collapsed" data-toggle="collapse" data-target="#sidenav-36-4" role="button" aria-expanded="false" aria-controls="sidenav-36-4"><div><span>整合地圖</span></div><span class="material-symbols expander" aria-hidden="true" translate="no">expand_more</span></button><ul id="sidenav-36-4" class="nav collapse"><li class="nav-item"><a class="nav-link" rel="noopener" href="https://codelabs.developers.google.com/codelabs/google-maps-in-flutter" target="_blank"><div><span>在 Flutter 應用程式中加入 Google Maps</span><span class="material-symbols" aria-hidden="true" translate="no">open_in_new</span></div></a></li><li class="nav-item"><a class="nav-link" rel="noopener" href="https://developers.google.com/maps/flutter-package" target="_blank"><div><span>Google Maps 套件</span><span class="material-symbols" aria-hidden="true" translate="no">open_in_new</span></div></a></li></ul></li></ul>
              </li>
              <li class="nav-item">
                <button class="nav-link collapsible collapsed" data-toggle="collapse" data-target="#sidenav-37" role="button" aria-expanded="false" aria-controls="sidenav-37"><div><span class="material-symbols leading" aria-hidden="true" translate="no">devices</span><span>來自其他平台？</span></div><span class="material-symbols expander" aria-hidden="true" translate="no">expand_more</span></button><ul id="sidenav-37" class="nav collapse"><li class="nav-item"><a class="nav-link" href="/flutter-for/android-devs"><div><span>給 Android 開發者的 Flutter</span></div></a></li><li class="nav-item"><a class="nav-link" href="/flutter-for/compose-devs"><div><span>給 Jetpack Compose 開發者的 Flutter</span></div></a></li><li class="nav-item"><a class="nav-link" href="/flutter-for/swiftui-devs"><div><span>給 SwiftUI 開發者的 Flutter</span></div></a></li><li class="nav-item"><a class="nav-link" href="/flutter-for/uikit-devs"><div><span>給 UIKit 開發者的 Flutter</span></div></a></li><li class="nav-item"><a class="nav-link" href="/flutter-for/react-native-devs"><div><span>給 React Native 開發者的 Flutter</span></div></a></li><li class="nav-item"><a class="nav-link" href="/flutter-for/web-devs"><div><span>給 Web 開發者的 Flutter</span></div></a></li><li class="nav-item"><a class="nav-link" href="/flutter-for/xamarin-forms-devs"><div><span>給 Xamarin.Forms 開發者的 Flutter</span></div></a></li><li class="nav-item"><a class="nav-link" href="/flutter-for/declarative"><div><span>宣告式 UI 簡介</span></div></a></li><li class="nav-item"><a class="nav-link" href="/flutter-for/dart-swift-concurrency"><div><span>Flutter 與 Swift 並發比較</span></div></a></li></ul>
              </li>
              <li class="nav-item">
                <button class="nav-link collapsible collapsed" data-toggle="collapse" data-target="#sidenav-38" role="button" aria-expanded="false" aria-controls="sidenav-38"><div><span class="material-symbols leading" aria-hidden="true" translate="no">update</span><span>保持更新</span></div><span class="material-symbols expander" aria-hidden="true" translate="no">expand_more</span></button><ul id="sidenav-38" class="nav collapse"><li class="nav-item"><a class="nav-link" href="/release/release-notes"><div><span>版本說明</span></div></a></li><li class="nav-item"><a class="nav-link" href="/release/breaking-changes"><div><span>重大變更</span></div></a></li><li class="nav-item"><a class="nav-link" href="/release/compatibility-policy"><div><span>相容性政策</span></div></a></li><li aria-hidden="true"><div class="sidenav-divider"></div></li><li class="nav-item"><a class="nav-link" rel="noopener" href="https://blog.flutter.dev" target="_blank"><div><span>Flutter 部落格</span><span class="material-symbols" aria-hidden="true" translate="no">open_in_new</span></div></a></li><li class="nav-item"><a class="nav-link" href="/release/whats-new"><div><span>文件新增內容</span></div></a></li></ul>
              </li>
              <li class="nav-item">
                <button class="nav-link collapsible collapsed" data-toggle="collapse" data-target="#sidenav-39" role="button" aria-expanded="false" aria-controls="sidenav-39"><div><span class="material-symbols leading" aria-hidden="true" translate="no">computer</span><span>管理安裝</span></div><span class="material-symbols expander" aria-hidden="true" translate="no">expand_more</span></button><ul id="sidenav-39" class="nav collapse"><li class="nav-item"><a class="nav-link" href="/install"><div><span>總覽</span></div></a></li><li class="nav-item"><a class="nav-link" href="/install/manual"><div><span>手動安裝</span></div></a></li><li class="nav-item"><a class="nav-link" href="/install/with-vs-code"><div><span>使用 VS Code 安裝</span></div></a></li><li aria-hidden="true"><div class="sidenav-divider"></div></li><li class="nav-item"><a class="nav-link" href="/install/archive"><div><span>SDK 封存</span></div></a></li><li class="nav-item"><a class="nav-link" href="/install/upgrade"><div><span>升級 SDK</span></div></a></li><li class="nav-item"><a class="nav-link" href="/install/add-to-path"><div><span>加入 PATH</span></div></a></li><li class="nav-item"><a class="nav-link" href="/install/troubleshoot"><div><span>疑難排解</span></div></a></li><li class="nav-item"><a class="nav-link" href="/install/uninstall"><div><span>解除安裝 SDK</span></div></a></li></ul>
              </li>
              <li class="nav-item">
                <button class="nav-link active collapsible" data-toggle="collapse" data-target="#sidenav-40" role="button" aria-expanded="true" aria-controls="sidenav-40"><div><span class="material-symbols leading" aria-hidden="true" translate="no">library_books</span><span>資源</span></div><span class="material-symbols expander" aria-hidden="true" translate="no">expand_more</span></button><ul id="sidenav-40" class="nav collapse"><li class="nav-item"><a class="nav-link" href="/reference/learning-resources"><div><span>範例與教學</span></div></a></li><li class="nav-item"><a class="nav-link" href="/resources/faq"><div><span>常見問題</span></div></a></li><li class="nav-item"><a class="nav-link" href="/resources/videos"><div><span>影片</span></div></a></li><li class="nav-item"><a class="nav-link" href="/resources/courses"><div><span>課程</span></div></a></li><li class="nav-item"><a class="nav-link active" href="/resources/glossary"><div><span>術語表</span></div></a></li><li class="nav-item"><a class="nav-link" href="/resources/support"><div><span>取得支援</span></div></a></li><li aria-hidden="true"><div class="sidenav-divider"></div></li><li class="nav-item"><button class="nav-link collapsible collapsed" data-toggle="collapse" data-target="#sidenav-40-8" role="button" aria-expanded="false" aria-controls="sidenav-40-8"><div><span>貢獻</span></div><span class="material-symbols expander" aria-hidden="true" translate="no">expand_more</span></button><ul id="sidenav-40-8" class="nav collapse"><li class="nav-item"><a class="nav-link" href="/contribute"><div><span>貢獻至 Flutter</span></div></a></li><li class="nav-item"><a class="nav-link" href="/resources/bug-reports"><div><span>建立有用的錯誤報告</span></div></a></li><li class="nav-item"><a class="nav-link" rel="noopener" href="https://github.com/flutter/rfc" target="_blank"><div><span>探索提案功能</span><span class="material-symbols" aria-hidden="true" translate="no">open_in_new</span></div></a></li></ul></li><li class="nav-item"><button class="nav-link collapsible collapsed" data-toggle="collapse" data-target="#sidenav-40-9" role="button" aria-expanded="false" aria-controls="sidenav-40-9"><div><span>參考</span></div><span class="material-symbols expander" aria-hidden="true" translate="no">expand_more</span></button><ul id="sidenav-40-9" class="nav collapse"><li class="nav-item"><a class="nav-link" href="/dash"><div><span>Dash 是誰？</span></div></a></li><li class="nav-item"><a class="nav-link" href="/reference/widgets"><div><span>元件索引</span></div></a></li><li class="nav-item"><a class="nav-link" href="/reference/create-new-app"><div><span>建立新應用程式</span></div></a></li><li class="nav-item"><a class="nav-link" href="/reference/flutter-cli"><div><span>flutter CLI</span></div></a></li><li class="nav-item"><a class="nav-link" rel="noopener" href="https://api.flutter.dev" target="_blank"><div><span>API 文件</span><span class="material-symbols" aria-hidden="true" translate="no">open_in_new</span></div></a></li><li class="nav-item"><a class="nav-link" rel="noopener" href="https://pub.dev" target="_blank"><div><span>pub.dev</span><span class="material-symbols" aria-hidden="true" translate="no">open_in_new</span></div></a></li></ul></li></ul>
              </li>
            </ul>
          </nav>
        </div>
        <main id="page-content">
          <div id="site-banner" role="alert">
            <p>
              Security update: Flutter 3.47.8 now blocks compromised eMudhra CA keys. Read the <a rel="noopener" href="https://github.com/dart-lang/sdk/security/advisories/GHSA-frr6-h895-5pxp" target="_blank">security advisory</a>.
            </p>
          </div>
          <div class="after-leading-content">
            <article>
              <header id="site-content-title" class="wrap">
                <h1 id="document-title">Glossary</h1>
                <p class="page-description">A glossary reference for terminology used across docs.flutter.dev.</p>
                <!--@site_shared:page_header_options data={"title":"Glossary","markdownUrl":"/resources/glossary.md","sourceUrl":null,"issueUrl":"https://github.com/flutter/website/issues/new?template=1_page_issue.yml&amp;page-url=https://docs.flutter.tw/resources/glossary"}-->
                <div id="page-header-options" class="dropdown" data-expanded="false">
                  <button class="dropdown-button text-button icon-button" aria-controls="page-header-options-content" aria-expanded="false" title="View page options."><span class="material-symbols" aria-hidden="true" translate="no">more_vert</span></button>
                  <div id="page-header-options-content" class="dropdown-content">
                    <nav class="dropdown-menu" role="menu">
                      <ul>
                        <li>
                          <button class="text-button"><span class="material-symbols" aria-hidden="true" translate="no">link</span>Copy link</button>
                        </li>
                        <li>
                          <button class="text-button" aria-describedby="page-header-options-copy-status" title="Copy this page as Markdown to your clipboard."><span class="material-symbols" aria-hidden="true" translate="no">content_copy</span>Copy as Markdown</button><span id="page-header-options-copy-status" class="copy-markdown-status" role="status" aria-live="polite" aria-atomic="true"></span>
                        </li>
                        <li>
                          <a class="text-button" target="_blank" rel="noopener" href="/resources/glossary.md"><span class="material-symbols" aria-hidden="true" translate="no">markdown</span>View as Markdown</a>
                        </li>
                        <li class="dropdown-divider" aria-hidden="true" role="separator"></li>
                        <li>
                          <a class="text-button" target="_blank" rel="noopener" href="https://github.com/flutter/website/issues/new?template=1_page_issue.yml&amp;page-url=https://docs.flutter.tw/resources/glossary"><span class="material-symbols" aria-hidden="true" translate="no">bug_report</span>Report an issue</a>
                        </li>
                      </ul>
                    </nav>
                  </div>
                </div>
                <!--/@site_shared:page_header_options-->
              </header>
              <p>The following are definitions of terms used across the Flutter documentation.</p>
              <!--@glossary_search_section-->
              <section id="filter-and-search">
                <div class="search-row">
                  <div class="search-wrapper">
                    <span class="material-symbols leading-icon" aria-hidden="true" translate="no">search</span>
                    <input placeholder="Search terms..." aria-label="Search terms by name..." type="search" value/>
                  </div>
                </div>
              </section>
              <!--/@glossary_search_section-->
              <section id="content-search-results">
                <div class="card-list">
                  <div id="adaptive" class="card outlined-card filled-card expandable-card collapsed glossary-card" data-partial-matches="adaptive ui design" data-full-matches>
                    <div class="card-header">
                      <h2 class="card-title">Adaptive</h2>
                      <div class="card-header-buttons">
                        <a class="text-button icon-button share-button" aria-label="Link to Adaptive card" title="Link to card" href="#adaptive"><span class="material-symbols" aria-hidden="true" translate="no">tag</span></a>
                        <button class="text-button icon-button expand-button" aria-expanded="false" aria-controls="adaptive-content" aria-label="Expand or collapse Adaptive card" title="Expand or collapse card"><span class="material-symbols" aria-hidden="true" translate="no">keyboard_arrow_up</span></button>
                      </div>
                    </div>
                    <div class="initial-content">
                      A design concept where the UI adapts to be usable in the available space,
                      often changing layout or input methods based on device capabilities.
                    </div>
                    <div id="adaptive-content" class="card-content expandable-content">
                      <p>
                        Adaptive design is about the UI being <em>usable</em> in the space,
                        as opposed to responsive design which is about fitting the UI <em>into</em>
                        the space.
                        An adaptive app selects the appropriate layout
                        (such as having a bottom nav instead of a side panel)
                        and input devices (for example, mouse versus touch)
                        to feel natural on the current device.
                      </p>
                      <div>
                        <h3 class="no_toc details-header">Related docs and resources</h3>
                        <ul class="resources-list">
                          <li>
                            <a class="filled-button" href="/ui/adaptive-responsive#what-is-responsive-vs-adaptive"><span class="material-symbols" aria-hidden="true" translate="no">article</span>Adaptive vs responsive design</a>
                          </li>
                          <li>
                            <a class="filled-button" href="/ui/adaptive-responsive"><span class="material-symbols" aria-hidden="true" translate="no">article</span>Building adaptive apps</a>
                          </li>
                        </ul>
                      </div>
                    </div>
                  </div>
                  <div id="agent-skill" class="card outlined-card filled-card expandable-card collapsed glossary-card" data-partial-matches="agent skill ai tooling" data-full-matches>
                    <div class="card-header">
                      <h2 class="card-title">Agent skill</h2>
                      <div class="card-header-buttons">
                        <a class="text-button icon-button share-button" aria-label="Link to Agent skill card" title="Link to card" href="#agent-skill"><span class="material-symbols" aria-hidden="true" translate="no">tag</span></a>
                        <button class="text-button icon-button expand-button" aria-expanded="false" aria-controls="agent-skill-content" aria-label="Expand or collapse Agent skill card" title="Expand or collapse card"><span class="material-symbols" aria-hidden="true" translate="no">keyboard_arrow_up</span></button>
                      </div>
                    </div>
                    <div class="initial-content">A specialized capability or tool that an AI agent uses for a specific task.</div>
                    <div id="agent-skill-content" class="card-content expandable-content">
                      <p>
                        An agent skill is a specialized set of instructions,
                        scripts, and resources that extend an AI agent's capabilities
                        for a specific domain or task.
                        Skills enable agents to interact with the environment,
                        execute multi-step workflows,
                        and perform complex problem-solving autonomously.
                      </p>
                    </div>
                  </div>
                  <div id="cupertino" class="card outlined-card filled-card expandable-card collapsed glossary-card" data-partial-matches="cupertino design ui" data-full-matches>
                    <div class="card-header">
                      <h2 class="card-title">Cupertino</h2>
                      <div class="card-header-buttons">
                        <a class="text-button icon-button share-button" aria-label="Link to Cupertino card" title="Link to card" href="#cupertino"><span class="material-symbols" aria-hidden="true" translate="no">tag</span></a>
                        <button class="text-button icon-button expand-button" aria-expanded="false" aria-controls="cupertino-content" aria-label="Expand or collapse Cupertino card" title="Expand or collapse card"><span class="material-symbols" aria-hidden="true" translate="no">keyboard_arrow_up</span></button>
                      </div>
                    </div>
                    <div class="initial-content">Flutter's implementation of the iOS design language.</div>
                    <div id="cupertino-content" class="card-content expandable-content">
                      <p>
                        Flutter's <code>cupertino_ui</code> library implements the iOS design language,
                        comprising a set of widgets that implement Apple's Human Interface Guidelines.
                      </p>
                      <p>
                        The Cupertino library, originally part of the main Flutter repo,
                        has been decoupled into a separate package, <code>cupertino_ui</code> on pub.dev.
                      </p>
                      <div>
                        <h3 class="no_toc details-header">Related docs and resources</h3>
                        <ul class="resources-list">
                          <li>
                            <a class="filled-button" href="https://developer.apple.com/design/human-interface-guidelines/"><span class="material-symbols" aria-hidden="true" translate="no">open_in_new</span>Human Interface Guidelines</a>
                          </li>
                          <li>
                            <a class="filled-button" href="/ui/widgets/cupertino"><span class="material-symbols" aria-hidden="true" translate="no">article</span>Cupertino widgets</a>
                          </li>
                          <li>
                            <a class="filled-button" href="https://pub.dev//packages/cupertino_ui"><span class="material-symbols" aria-hidden="true" translate="no">open_in_new</span>cupertino_ui package</a>
                          </li>
                          <li>
                            <a class="filled-button" href="https://blog.flutter.dev/decoupling-material-cupertino"><span class="material-symbols" aria-hidden="true" translate="no">article</span>Material and Cupertino decoupling are here</a>
                          </li>
                          <li>
                            <a class="filled-button" href="/release/breaking-changes/material-ui-and-cupertino-ui"><span class="material-symbols" aria-hidden="true" translate="no">article</span>Material and Cupertino decoupling guide</a>
                          </li>
                          <li>
                            <a class="filled-button" href="https://pub.dev"><span class="material-symbols" aria-hidden="true" translate="no">open_in_new</span>pub.dev</a>
                          </li>
                        </ul>
                      </div>
                    </div>
                  </div>
                  <div id="dart" class="card outlined-card filled-card expandable-card collapsed glossary-card" data-partial-matches="dart dart fundamentals language" data-full-matches>
                    <div class="card-header">
                      <h2 class="card-title">Dart</h2>
                      <div class="card-header-buttons">
                        <a class="text-button icon-button share-button" aria-label="Link to Dart card" title="Link to card" href="#dart"><span class="material-symbols" aria-hidden="true" translate="no">tag</span></a>
                        <button class="text-button icon-button expand-button" aria-expanded="false" aria-controls="dart-content" aria-label="Expand or collapse Dart card" title="Expand or collapse card"><span class="material-symbols" aria-hidden="true" translate="no">keyboard_arrow_up</span></button>
                      </div>
                    </div>
                    <div class="initial-content">A programming language for fast apps on any platform.</div>
                    <div id="dart-content" class="card-content expandable-content">
                      <p>
                        Dart is an approachable, portable, and performant language designed
                        for full-stack app development. It offers sound null safety,
                        a strong type system, and compiles to native machine code
                        for mobile, desktop, and backend, as well as JavaScript or WebAssembly
                        for the web. While Dart is the foundation of Flutter,
                        it is also used for building command-line tools, servers,
                        and other applications.
                      </p>
                      <div>
                        <h3 class="no_toc details-header">Related docs and resources</h3>
                        <ul class="resources-list">
                          <li>
                            <a class="filled-button" href="https://dart.dev"><span class="material-symbols" aria-hidden="true" translate="no">open_in_new</span>Dart language site</a>
                          </li>
                        </ul>
                      </div>
                    </div>
                  </div>
                  <div id="declarative" class="card outlined-card filled-card expandable-card collapsed glossary-card" data-partial-matches="declarative fundamentals ui" data-full-matches>
                    <div class="card-header">
                      <h2 class="card-title">Declarative</h2>
                      <div class="card-header-buttons">
                        <a class="text-button icon-button share-button" aria-label="Link to Declarative card" title="Link to card" href="#declarative"><span class="material-symbols" aria-hidden="true" translate="no">tag</span></a>
                        <button class="text-button icon-button expand-button" aria-expanded="false" aria-controls="declarative-content" aria-label="Expand or collapse Declarative card" title="Expand or collapse card"><span class="material-symbols" aria-hidden="true" translate="no">keyboard_arrow_up</span></button>
                      </div>
                    </div>
                    <div class="initial-content">
                      A programming style where the UI state is described,
                      and the framework transitions the UI to match that state.
                    </div>
                    <div id="declarative-content" class="card-content expandable-content">
                      <p>
                        Declarative programming is a style where you describe the
                        <em>current state</em> of your UI, and the framework takes care
                        of transitioning the UI to match that state.
                      </p>
                      <p>
                        In Flutter, widgets are immutable "blueprints".
                        To change the UI, a widget triggers a rebuild on itself
                        (usually by calling <code>setState</code>) and constructs a new widget subtree.
                        This contrasts with <em>imperative</em> programming,
                        where you manually construct and mutate UI entities.
                      </p>
                      <div>
                        <h3 class="no_toc details-header">Related docs and resources</h3>
                        <ul class="resources-list">
                          <li>
                            <a class="filled-button" href="/get-started/flutter-for/declarative"><span class="material-symbols" aria-hidden="true" translate="no">article</span>Introduction to declarative UI</a>
                          </li>
                          <li>
                            <a class="filled-button" href="/data-and-backend/state-mgmt/declarative"><span class="material-symbols" aria-hidden="true" translate="no">article</span>Start thinking declaratively</a>
                          </li>
                        </ul>
                      </div>
                    </div>
                  </div>
                  <div id="embedder" class="card outlined-card filled-card expandable-card collapsed glossary-card" data-partial-matches="embedder architecture engine" data-full-matches>
                    <div class="card-header">
                      <h2 class="card-title">Embedder</h2>
                      <div class="card-header-buttons">
                        <a class="text-button icon-button share-button" aria-label="Link to Embedder card" title="Link to card" href="#embedder"><span class="material-symbols" aria-hidden="true" translate="no">tag</span></a>
                        <button class="text-button icon-button expand-button" aria-expanded="false" aria-controls="embedder-content" aria-label="Expand or collapse Embedder card" title="Expand or collapse card"><span class="material-symbols" aria-hidden="true" translate="no">keyboard_arrow_up</span></button>
                      </div>
                    </div>
                    <div class="initial-content">
                      The platform-specific component that supports Flutter
                      on a native platform.
                    </div>
                    <div id="embedder-content" class="card-content expandable-content">
                      <p>
                        Each native platform supported by Flutter has an <em>embedder</em>
                        for platform-specific logic. The embedder is the bridge
                        that coordinates with the underlying operating system.
                        It provides access to services like input, accessibility,
                        message event loops, and more.
                        The embedder also launches and manages the Flutter engine.
                      </p>
                      <p>
                        Each embedder is written in the platform's native language:
                        Java and Kotlin for Android, Swift and Objective-C for iOS and macOS,
                        and C++ for Windows and Linux.
                      </p>
                      <p>
                        Each embedder enables plugin packages to add additional
                        platform-specific functionality to the app.
                      </p>
                      <p>The embedder is launched and managed by the runner app.</p>
                      <div>
                        <h3 class="no_toc details-header">Related docs and resources</h3>
                        <ul class="resources-list">
                          <li>
                            <a class="filled-button" href="/resources/architectural-overview#platform-embedding"><span class="material-symbols" aria-hidden="true" translate="no">article</span>Architectural overview: The Embedder</a>
                          </li>
                          <li>
                            <a class="filled-button" href="/embedded"><span class="material-symbols" aria-hidden="true" translate="no">article</span>Flutter on embedded devices</a>
                          </li>
                        </ul>
                      </div>
                    </div>
                  </div>
                  <div id="engine" class="card outlined-card filled-card expandable-card collapsed glossary-card" data-partial-matches="engine engine architecture" data-full-matches>
                    <div class="card-header">
                      <h2 class="card-title">Engine</h2>
                      <div class="card-header-buttons">
                        <a class="text-button icon-button share-button" aria-label="Link to Engine card" title="Link to card" href="#engine"><span class="material-symbols" aria-hidden="true" translate="no">tag</span></a>
                        <button class="text-button icon-button expand-button" aria-expanded="false" aria-controls="engine-content" aria-label="Expand or collapse Engine card" title="Expand or collapse card"><span class="material-symbols" aria-hidden="true" translate="no">keyboard_arrow_up</span></button>
                      </div>
                    </div>
                    <div class="initial-content">The portable runtime for Flutter apps.</div>
                    <div id="engine-content" class="card-content expandable-content">
                      <p>
                        The engine is Flutter's platform-agnostic logic that's written
                        in native code, mostly C++.
                      </p>
                      <p>The main responsibilities of the engine are as follows:</p>
                      <ol>
                        <li>
                          Exposes the <code>dart:ui</code> API, which are the low-level primitives
                          that the Flutter <a href="/resources/architectural-overview#architectural-layers">framework</a>
                           builds upon.
                        </li>
                        <li>
                          Converts low-level drawing commands into pixels (also called
                          <em>rasterization</em>, this includes <!--@site_shared:simple_tooltip data={"target":"8BdubLj7","content":"-X4V5SBW"}--><span class="tooltip-wrapper"><span class="tooltip-target"><!--ref:8BdubLj7--><a href="/resources/glossary#impeller">Impeller</a><!--/ref:8BdubLj7--></span><span class="tooltip" style="left: 50%"><!--ref:-X4V5SBW--><span class="tooltip-content"><span class="tooltip-header">Impeller</span><span>Flutter's modern graphics rendering engine,
designed for smooth, predictable performance. <a title="Learn more about 'Impeller' and find related resources." href="/resources/glossary#impeller">Learn more</a></span></span><!--/ref:-X4V5SBW--></span></span><!--/@site_shared:simple_tooltip-->
                           and Skia).
                        </li>
                        <li>Responsible for launching and managing Dart's runtime.</li>
                        <li>Responsible for laying out text.</li>
                        <li>Responsible for asset resolution.</li>
                      </ol>
                      <div>
                        <h3 class="no_toc details-header">Related docs and resources</h3>
                        <ul class="resources-list">
                          <li>
                            <a class="filled-button" href="/resources/architectural-overview#architectural-layers"><span class="material-symbols" aria-hidden="true" translate="no">article</span>Architectural overview: The Engine</a>
                          </li>
                          <li>
                            <a class="filled-button" href="https://github.com/flutter/flutter/tree/main/engine/src/flutter"><span class="material-symbols" aria-hidden="true" translate="no">code_blocks</span>Engine repository</a>
                          </li>
                        </ul>
                      </div>
                    </div>
                  </div>
                  <div id="frame" class="card outlined-card filled-card expandable-card collapsed glossary-card" data-partial-matches="frame performance rendering" data-full-matches>
                    <div class="card-header">
                      <h2 class="card-title">Frame</h2>
                      <div class="card-header-buttons">
                        <a class="text-button icon-button share-button" aria-label="Link to Frame card" title="Link to card" href="#frame"><span class="material-symbols" aria-hidden="true" translate="no">tag</span></a>
                        <button class="text-button icon-button expand-button" aria-expanded="false" aria-controls="frame-content" aria-label="Expand or collapse Frame card" title="Expand or collapse card"><span class="material-symbols" aria-hidden="true" translate="no">keyboard_arrow_up</span></button>
                      </div>
                    </div>
                    <div class="initial-content">
                      A single image in a sequence of images that
                      makes up an animation or UI update.
                    </div>
                    <div id="frame-content" class="card-content expandable-content">
                      <p>
                        Flutter aims to produce 60 frames per second (fps),
                        or 120 fps on capable devices.
                        This means the framework has approximately 16ms (at 60 fps)
                        or 8ms (at 120 fps) to render each frame.
                        If the app takes longer than this to render a frame,
                        the user might see <!--@site_shared:simple_tooltip data={"target":"K-j-DSM0","content":"ZbPHvgKo"}--><span class="tooltip-wrapper"><span class="tooltip-target"><!--ref:K-j-DSM0--><a href="/resources/glossary#jank">jank</a><!--/ref:K-j-DSM0--></span><span class="tooltip" style="left: 50%"><!--ref:ZbPHvgKo--><span class="tooltip-content"><span class="tooltip-header">Jank</span><span>When an app appears to stutter or jerk visually instead of animating
smoothly. <a title="Learn more about 'Jank' and find related resources." href="/resources/glossary#jank">Learn more</a></span></span><!--/ref:ZbPHvgKo--></span></span><!--/@site_shared:simple_tooltip-->.
                      </p>
                      <div>
                        <h3 class="no_toc details-header">Related docs and resources</h3>
                        <ul class="resources-list">
                          <li>
                            <a class="filled-button" href="/perf/rendering-performance"><span class="material-symbols" aria-hidden="true" translate="no">article</span>Rendering performance</a>
                          </li>
                        </ul>
                      </div>
                    </div>
                  </div>
                  <div id="hot-reload" class="card outlined-card filled-card expandable-card collapsed glossary-card" data-partial-matches="hot reload fast development tooling" data-full-matches>
                    <div class="card-header">
                      <h2 class="card-title">Hot reload</h2>
                      <div class="card-header-buttons">
                        <a class="text-button icon-button share-button" aria-label="Link to Hot reload card" title="Link to card" href="#hot-reload"><span class="material-symbols" aria-hidden="true" translate="no">tag</span></a>
                        <button class="text-button icon-button expand-button" aria-expanded="false" aria-controls="hot-reload-content" aria-label="Expand or collapse Hot reload card" title="Expand or collapse card"><span class="material-symbols" aria-hidden="true" translate="no">keyboard_arrow_up</span></button>
                      </div>
                    </div>
                    <div class="initial-content">
                      A Flutter feature that allows you to inject updated code into
                      a running application in the Dart VM and see the changes immediately
                      while maintaining application state.
                    </div>
                    <div id="hot-reload-content" class="card-content expandable-content">
                      <p>
                        This feature is also called "stateful hot reload".
                        After the Dart runtime updates classes with the new versions
                        of fields and functions, the Flutter framework automatically
                        rebuilds the widget tree, allowing you to quickly view the effects
                        of your changes. Hot reload greatly increases the speed of development.
                      </p>
                      <p>
                        Hot reload works on mobile, web, and desktop apps that are
                        running in debug mode and is fully supported in VS Code,
                        Android Studio, and IntelliJ IDEA. It does not re-run <code>main</code> or
                        <code>initState</code>; for that, use <!--@site_shared:simple_tooltip data={"target":"_3en9BSd","content":"_98FoVO_"}--><span class="tooltip-wrapper"><span class="tooltip-target"><!--ref:_3en9BSd--><a href="/resources/glossary#hot-restart">hot restart</a><!--/ref:_3en9BSd--></span><span class="tooltip" style="left: 50%"><!--ref:_98FoVO_--><span class="tooltip-content"><span class="tooltip-header">Hot restart</span><span>Similar to hot reload, but it does not maintain app state.
Use hot restart to re-run `main` or `initState`. <a title="Learn more about 'Hot restart' and find related resources." href="/resources/glossary#hot-restart">Learn more</a></span></span><!--/ref:_98FoVO_--></span></span><!--/@site_shared:simple_tooltip-->.
                      </p>
                      <div>
                        <h3 class="no_toc details-header">Related docs and resources</h3>
                        <ul class="resources-list">
                          <li>
                            <a class="filled-button" href="/tools/hot-reload"><span class="material-symbols" aria-hidden="true" translate="no">article</span>Hot reload documentation</a>
                          </li>
                          <li>
                            <a class="filled-button" href="https://youtu.be/YScJS8obxlo?si=QxJDIf_LGmle2Xs6"><span class="material-symbols" aria-hidden="true" translate="no">play_arrow</span>Fast development cycles with Flutter's hot reload</a>
                          </li>
                          <li>
                            <a class="filled-button" href="https://youtu.be/7nT3BHm6Gyg?si=nLUM0n69PSQnm8CF"><span class="material-symbols" aria-hidden="true" translate="no">play_arrow</span>Stateful hot reload for web is here</a>
                          </li>
                        </ul>
                      </div>
                    </div>
                  </div>
                  <div id="hot-restart" class="card outlined-card filled-card expandable-card collapsed glossary-card" data-partial-matches="hot restart fast development tooling" data-full-matches>
                    <div class="card-header">
                      <h2 class="card-title">Hot restart</h2>
                      <div class="card-header-buttons">
                        <a class="text-button icon-button share-button" aria-label="Link to Hot restart card" title="Link to card" href="#hot-restart"><span class="material-symbols" aria-hidden="true" translate="no">tag</span></a>
                        <button class="text-button icon-button expand-button" aria-expanded="false" aria-controls="hot-restart-content" aria-label="Expand or collapse Hot restart card" title="Expand or collapse card"><span class="material-symbols" aria-hidden="true" translate="no">keyboard_arrow_up</span></button>
                      </div>
                    </div>
                    <div class="initial-content">
                      Similar to hot reload, but it does not maintain app state.
                      Use hot restart to re-run 
                      <code>main</code>
                       or 
                      <code>initState</code>
                      .
                    </div>
                    <div id="hot-restart-content" class="card-content expandable-content">
                      <p>
                        Hot restart is still faster than a full restart, which also
                        recompiles the native, platform code (such as Swift).
                        On the web, it also restarts the Dart Development Compiler (DDC).
                      </p>
                      <div>
                        <h3 class="no_toc details-header">Related docs and resources</h3>
                        <ul class="resources-list">
                          <li>
                            <a class="filled-button" href="/tools/hot-reload#hot-restart"><span class="material-symbols" aria-hidden="true" translate="no">article</span>Difference between hot reload, hot restart, and full restart</a>
                          </li>
                        </ul>
                      </div>
                    </div>
                  </div>
                  <div id="impeller" class="card outlined-card filled-card expandable-card collapsed glossary-card" data-partial-matches="impeller rendering performance engine" data-full-matches>
                    <div class="card-header">
                      <h2 class="card-title">Impeller</h2>
                      <div class="card-header-buttons">
                        <a class="text-button icon-button share-button" aria-label="Link to Impeller card" title="Link to card" href="#impeller"><span class="material-symbols" aria-hidden="true" translate="no">tag</span></a>
                        <button class="text-button icon-button expand-button" aria-expanded="false" aria-controls="impeller-content" aria-label="Expand or collapse Impeller card" title="Expand or collapse card"><span class="material-symbols" aria-hidden="true" translate="no">keyboard_arrow_up</span></button>
                      </div>
                    </div>
                    <div class="initial-content">
                      Flutter's modern graphics rendering engine,
                      designed for smooth, predictable performance.
                    </div>
                    <div id="impeller-content" class="card-content expandable-content">
                      <p>
                        <em>Impeller</em> is Flutter's high-performance rendering engine,
                        built from the ground up for Flutter's needs and modern graphics APIs.
                      </p>
                      <p>
                        Its primary goal is to provide consistently smooth performance and
                        eliminate stuttering while rendering, particularly that
                        caused by shader compilation during animations and interactions.
                      </p>
                      <p>
                        Impeller achieves this by pre-compiling a specific, smaller set of
                        shaders at application build time, rather than compiling at runtime.
                      </p>
                      <div>
                        <h3 class="no_toc details-header">Related docs and resources</h3>
                        <ul class="resources-list">
                          <li>
                            <a class="filled-button" href="/perf/impeller"><span class="material-symbols" aria-hidden="true" translate="no">article</span>Impeller documentation</a>
                          </li>
                          <li>
                            <a class="filled-button" href="https://github.com/flutter/flutter/blob/main/docs/engine/impeller/docs/faq.md"><span class="material-symbols" aria-hidden="true" translate="no">open_in_new</span>Impeller FAQ</a>
                          </li>
                        </ul>
                      </div>
                    </div>
                  </div>
                  <div id="jank" class="card outlined-card filled-card expandable-card collapsed glossary-card" data-partial-matches="jank performance smooth rendering" data-full-matches>
                    <div class="card-header">
                      <h2 class="card-title">Jank</h2>
                      <div class="card-header-buttons">
                        <a class="text-button icon-button share-button" aria-label="Link to Jank card" title="Link to card" href="#jank"><span class="material-symbols" aria-hidden="true" translate="no">tag</span></a>
                        <button class="text-button icon-button expand-button" aria-expanded="false" aria-controls="jank-content" aria-label="Expand or collapse Jank card" title="Expand or collapse card"><span class="material-symbols" aria-hidden="true" translate="no">keyboard_arrow_up</span></button>
                      </div>
                    </div>
                    <div class="initial-content">
                      When an app appears to stutter or jerk visually instead of animating
                      smoothly.
                    </div>
                    <div id="jank-content" class="card-content expandable-content">
                      <p>
                        Jank occurs when a system can't keep up with the expected frame rate
                        and drops frames. Jank is a performance problem. Flutter offers
                        information and tooling, such as the Performance tool in DevTools,
                        that can help you diagnose and fix jank in your application.
                      </p>
                      <div>
                        <h3 class="no_toc details-header">Related docs and resources</h3>
                        <ul class="resources-list">
                          <li>
                            <a class="filled-button" href="/tools/devtools/performance"><span class="material-symbols" aria-hidden="true" translate="no">article</span>Use the Performance view in DevTools</a>
                          </li>
                          <li>
                            <a class="filled-button" href="/perf/rendering-performance"><span class="material-symbols" aria-hidden="true" translate="no">article</span>Improving rendering performance</a>
                          </li>
                          <li>
                            <a class="filled-button" href="/perf/best-practices"><span class="material-symbols" aria-hidden="true" translate="no">article</span>Performance best practices</a>
                          </li>
                          <li>
                            <a class="filled-button" href="/cookbook/testing/integration/profiling"><span class="material-symbols" aria-hidden="true" translate="no">article</span>Measure performance with an integration test</a>
                          </li>
                        </ul>
                      </div>
                    </div>
                  </div>
                  <div id="material" class="card outlined-card filled-card expandable-card collapsed glossary-card" data-partial-matches="material design ui" data-full-matches>
                    <div class="card-header">
                      <h2 class="card-title">Material</h2>
                      <div class="card-header-buttons">
                        <a class="text-button icon-button share-button" aria-label="Link to Material card" title="Link to card" href="#material"><span class="material-symbols" aria-hidden="true" translate="no">tag</span></a>
                        <button class="text-button icon-button expand-button" aria-expanded="false" aria-controls="material-content" aria-label="Expand or collapse Material card" title="Expand or collapse card"><span class="material-symbols" aria-hidden="true" translate="no">keyboard_arrow_up</span></button>
                      </div>
                    </div>
                    <div class="initial-content">An open-source design system built and supported by Google.</div>
                    <div id="material-content" class="card-content expandable-content">
                      <p>
                        Material Design is an adaptable system of guidelines, components, and tools
                        that support the best practices of user interface design.
                        Flutter's <code>material_ui</code> library implements Material Design widgets.
                      </p>
                      <p>
                        The Material library, originally part of the main Flutter repo,
                        has been decoupled into a separate package, <code>material_ui</code> on pub.dev.
                      </p>
                      <div>
                        <h3 class="no_toc details-header">Related docs and resources</h3>
                        <ul class="resources-list">
                          <li>
                            <a class="filled-button" href="https://m3.material.io"><span class="material-symbols" aria-hidden="true" translate="no">open_in_new</span>Material Design site</a>
                          </li>
                          <li>
                            <a class="filled-button" href="/ui/widgets/material"><span class="material-symbols" aria-hidden="true" translate="no">article</span>Material widgets</a>
                          </li>
                          <li>
                            <a class="filled-button" href="https://pub.dev/packages/material_ui"><span class="material-symbols" aria-hidden="true" translate="no">open_in_new</span>material_ui package</a>
                          </li>
                          <li>
                            <a class="filled-button" href="https://blog.flutter.dev/decoupling-material-cupertino"><span class="material-symbols" aria-hidden="true" translate="no">article</span>Material and Cupertino decoupling are here</a>
                          </li>
                          <li>
                            <a class="filled-button" href="/release/breaking-changes/material-ui-and-cupertino-ui"><span class="material-symbols" aria-hidden="true" translate="no">article</span>Material and Cupertino decoupling guide</a>
                          </li>
                          <li>
                            <a class="filled-button" href="https://pub.dev"><span class="material-symbols" aria-hidden="true" translate="no">open_in_new</span>pub.dev</a>
                          </li>
                        </ul>
                      </div>
                    </div>
                  </div>
                  <div id="null-safety" class="card outlined-card filled-card expandable-card collapsed glossary-card" data-partial-matches="null safety language fundamentals" data-full-matches>
                    <div class="card-header">
                      <h2 class="card-title">Null safety</h2>
                      <div class="card-header-buttons">
                        <a class="text-button icon-button share-button" aria-label="Link to Null safety card" title="Link to card" href="#null-safety"><span class="material-symbols" aria-hidden="true" translate="no">tag</span></a>
                        <button class="text-button icon-button expand-button" aria-expanded="false" aria-controls="null-safety-content" aria-label="Expand or collapse Null safety card" title="Expand or collapse card"><span class="material-symbols" aria-hidden="true" translate="no">keyboard_arrow_up</span></button>
                      </div>
                    </div>
                    <div class="initial-content">A Dart feature that prevents errors that result from accessing variables set to <code>null</code>.</div>
                    <div id="null-safety-content" class="card-content expandable-content">
                      <p>
                        Dart's null safety prevents errors that result from unintentional access
                        of variables set to <code>null</code>.
                      </p>
                      <p>
                        With <a href="https://dart.dev/null-safety">sound null safety</a>, variables are non-nullable by default:
                        they can only be assigned a value of <code>null</code> if you explicitly declare
                        them as nullable.
                        This differs from other "mixed" null safety implementations,
                        where a non-nullable variable could still contain <code>null</code> at runtime.
                        With Dart's sound null safety, the compiler guarantees that a
                        non-nullable variable can never be <code>null</code>.
                      </p>
                      <div>
                        <h3 class="no_toc details-header">Related docs and resources</h3>
                        <ul class="resources-list">
                          <li>
                            <a class="filled-button" href="https://dart.dev/null-safety"><span class="material-symbols" aria-hidden="true" translate="no">open_in_new</span>Sound null safety</a>
                          </li>
                          <li>
                            <a class="filled-button" href="https://dart.dev/codelabs/null-safety"><span class="material-symbols" aria-hidden="true" translate="no">school</span>Null safety codelab</a>
                          </li>
                        </ul>
                      </div>
                    </div>
                  </div>
                  <div id="package" class="card outlined-card filled-card expandable-card collapsed glossary-card" data-partial-matches="package packages plugins" data-full-matches>
                    <div class="card-header">
                      <h2 class="card-title">Package</h2>
                      <div class="card-header-buttons">
                        <a class="text-button icon-button share-button" aria-label="Link to Package card" title="Link to card" href="#package"><span class="material-symbols" aria-hidden="true" translate="no">tag</span></a>
                        <button class="text-button icon-button expand-button" aria-expanded="false" aria-controls="package-content" aria-label="Expand or collapse Package card" title="Expand or collapse card"><span class="material-symbols" aria-hidden="true" translate="no">keyboard_arrow_up</span></button>
                      </div>
                    </div>
                    <div class="initial-content">
                      At a minimum, a Dart package is a directory containing a
                      
                      <code>pubspec.yaml</code>
                       file.
                    </div>
                    <div id="package-content" class="card-content expandable-content">
                      <p>
                        Additionally, a package can contain dependencies (listed in the pubspec),
                        Dart libraries, apps, resources, tests, images, fonts, and examples.
                        The pub.dev site lists many packages—developed by Google engineers
                        and generous members of the Flutter and Dart community—that you can use
                        in your app.
                      </p>
                      <div>
                        <h3 class="no_toc details-header">Related docs and resources</h3>
                        <ul class="resources-list">
                          <li>
                            <a class="filled-button" href="https://youtu.be/Y9WifT8aN6o"><span class="material-symbols" aria-hidden="true" translate="no">play_arrow</span>Packages v Plugins</a>
                          </li>
                          <li>
                            <a class="filled-button" href="/packages-and-plugins/dependency-management"><span class="material-symbols" aria-hidden="true" translate="no">article</span>Package dependency management</a>
                          </li>
                          <li>
                            <a class="filled-button" href="https://dart.dev/tools/pub/versioning"><span class="material-symbols" aria-hidden="true" translate="no">article</span>Package versioning guide</a>
                          </li>
                          <li>
                            <a class="filled-button" href="https://pub.dev"><span class="material-symbols" aria-hidden="true" translate="no">open_in_new</span>pub.dev</a>
                          </li>
                        </ul>
                      </div>
                    </div>
                  </div>
                  <div id="plugin" class="card outlined-card filled-card expandable-card collapsed glossary-card" data-partial-matches="plugin packages plugins" data-full-matches>
                    <div class="card-header">
                      <h2 class="card-title">Plugin</h2>
                      <div class="card-header-buttons">
                        <a class="text-button icon-button share-button" aria-label="Link to Plugin card" title="Link to card" href="#plugin"><span class="material-symbols" aria-hidden="true" translate="no">tag</span></a>
                        <button class="text-button icon-button expand-button" aria-expanded="false" aria-controls="plugin-content" aria-label="Expand or collapse Plugin card" title="Expand or collapse card"><span class="material-symbols" aria-hidden="true" translate="no">keyboard_arrow_up</span></button>
                      </div>
                    </div>
                    <div class="initial-content">
                      A plugin package (generally referred to as 
                      <em>a plugin</em>
                      ),
                      is a special kind of package that makes platform functionallity
                      available to the app.
                    </div>
                    <div id="plugin-content" class="card-content expandable-content">
                      <p>
                        Plugin packages can be written for Android (using Kotlin or Java),
                        iOS (using Swift or Objective-C), web, macOS, Windows, Linux, or
                        any combination thereof. For example, a plugin might provide
                        Flutter apps with the ability to use a device's camera.
                      </p>
                      <div>
                        <h3 class="no_toc details-header">Related docs and resources</h3>
                        <ul class="resources-list">
                          <li>
                            <a class="filled-button" href="https://youtu.be/Y9WifT8aN6o"><span class="material-symbols" aria-hidden="true" translate="no">play_arrow</span>Packages v Plugins</a>
                          </li>
                        </ul>
                      </div>
                    </div>
                  </div>
                  <div id="prop-drilling" class="card outlined-card filled-card expandable-card collapsed glossary-card" data-partial-matches="prop drilling state management architecture" data-full-matches>
                    <div class="card-header">
                      <h2 class="card-title">Prop drilling</h2>
                      <div class="card-header-buttons">
                        <a class="text-button icon-button share-button" aria-label="Link to Prop drilling card" title="Link to card" href="#prop-drilling"><span class="material-symbols" aria-hidden="true" translate="no">tag</span></a>
                        <button class="text-button icon-button expand-button" aria-expanded="false" aria-controls="prop-drilling-content" aria-label="Expand or collapse Prop drilling card" title="Expand or collapse card"><span class="material-symbols" aria-hidden="true" translate="no">keyboard_arrow_up</span></button>
                      </div>
                    </div>
                    <div class="initial-content">
                      The process of passing data through multiple layers of widgets
                      through constructor parameters.
                    </div>
                    <div id="prop-drilling-content" class="card-content expandable-content">
                      <p>
                        The process of passing data through multiple layers of widgets
                        through constructor parameters, usually to reach a deeper descendant.
                        This pattern can become verbose, which is
                        why other state management solutions
                        (like <code>InheritedWidget</code> or <code>Provider</code>) are often used.
                      </p>
                      <div>
                        <h3 class="no_toc details-header">Related docs and resources</h3>
                        <ul class="resources-list">
                          <li>
                            <a class="filled-button" href="/data-and-backend/state-mgmt/intro"><span class="material-symbols" aria-hidden="true" translate="no">article</span>State management introduction</a>
                          </li>
                        </ul>
                      </div>
                    </div>
                  </div>
                  <div id="pub" class="card outlined-card filled-card expandable-card collapsed glossary-card" data-partial-matches="pub packages tooling" data-full-matches>
                    <div class="card-header">
                      <h2 class="card-title">pub</h2>
                      <div class="card-header-buttons">
                        <a class="text-button icon-button share-button" aria-label="Link to pub card" title="Link to card" href="#pub"><span class="material-symbols" aria-hidden="true" translate="no">tag</span></a>
                        <button class="text-button icon-button expand-button" aria-expanded="false" aria-controls="pub-content" aria-label="Expand or collapse pub card" title="Expand or collapse card"><span class="material-symbols" aria-hidden="true" translate="no">keyboard_arrow_up</span></button>
                      </div>
                    </div>
                    <div class="initial-content">The package manager for the Dart programming language.</div>
                    <div id="pub-content" class="card-content expandable-content">
                      <p>
                        Pub is the tool used for managing Dart packages.
                        It allows you to install, upgrade, and manage dependencies for your Dart app.
                        Dependencies are defined in the <a href="https://dart.dev/tools/pub/pubspec"><code>pubspec.yaml</code></a>
                         file.
                        Packages are hosted on pub.dev, the official package repository.
                      </p>
                      <div>
                        <h3 class="no_toc details-header">Related docs and resources</h3>
                        <ul class="resources-list">
                          <li>
                            <a class="filled-button" href="https://pub.dev"><span class="material-symbols" aria-hidden="true" translate="no">open_in_new</span>pub.dev</a>
                          </li>
                          <li>
                            <a class="filled-button" href="/packages-and-plugins/using-packages"><span class="material-symbols" aria-hidden="true" translate="no">article</span>Using packages</a>
                          </li>
                        </ul>
                      </div>
                    </div>
                  </div>
                  <div id="renderobject" class="card outlined-card filled-card expandable-card collapsed glossary-card" data-partial-matches="renderobject rendering architecture" data-full-matches>
                    <div class="card-header">
                      <h2 class="card-title">RenderObject</h2>
                      <div class="card-header-buttons">
                        <a class="text-button icon-button share-button" aria-label="Link to RenderObject card" title="Link to card" href="#renderobject"><span class="material-symbols" aria-hidden="true" translate="no">tag</span></a>
                        <button class="text-button icon-button expand-button" aria-expanded="false" aria-controls="renderobject-content" aria-label="Expand or collapse RenderObject card" title="Expand or collapse card"><span class="material-symbols" aria-hidden="true" translate="no">keyboard_arrow_up</span></button>
                      </div>
                    </div>
                    <div class="initial-content">
                      A persistent object in the Flutter framework responsible for layout,
                      painting, and hit testing.
                    </div>
                    <div id="renderobject-content" class="card-content expandable-content">
                      <p>
                        While widgets are immutable blueprints,
                        <code>RenderObject</code>s are mutable objects that persist between frames.
                        They handle the heavy lifting of determining exactly where elements
                         should be placed and how they should look.
                      </p>
                      <p>
                        They represent a node in the render tree,
                        which is the most detailed tree in Flutter's multi-tree architecture.
                      </p>
                      <div>
                        <h3 class="no_toc details-header">Related docs and resources</h3>
                        <ul class="resources-list">
                          <li>
                            <a class="filled-button" href="/resources/architectural-overview#architectural-layers"><span class="material-symbols" aria-hidden="true" translate="no">article</span>Architectural Overview: The Rendering Layer</a>
                          </li>
                          <li>
                            <a class="filled-button" href="https://api.flutter.dev/flutter/rendering/RenderObject-class.html"><span class="material-symbols" aria-hidden="true" translate="no">description</span>RenderObject API documentation</a>
                          </li>
                        </ul>
                      </div>
                    </div>
                  </div>
                  <div id="sliver" class="card outlined-card filled-card expandable-card collapsed glossary-card" data-partial-matches="sliver scrolling ui" data-full-matches>
                    <div class="card-header">
                      <h2 class="card-title">Sliver</h2>
                      <div class="card-header-buttons">
                        <a class="text-button icon-button share-button" aria-label="Link to Sliver card" title="Link to card" href="#sliver"><span class="material-symbols" aria-hidden="true" translate="no">tag</span></a>
                        <button class="text-button icon-button expand-button" aria-expanded="false" aria-controls="sliver-content" aria-label="Expand or collapse Sliver card" title="Expand or collapse card"><span class="material-symbols" aria-hidden="true" translate="no">keyboard_arrow_up</span></button>
                      </div>
                    </div>
                    <div class="initial-content">A customizable portion of a scrollable area.</div>
                    <div id="sliver-content" class="card-content expandable-content">
                      <p>
                        A sliver is a portion of a scrollable area that you can define
                        to behave in a special way.
                        Think of slivers as building blocks that you can compose together
                        inside a <code>CustomScrollView</code> to create custom scrolling experiences,
                        like elastic scrolling or a collapsing header.
                        Slivers are built lazily, which means that Flutter only renders
                        the slivers that are visible on screen,
                        making them very efficient for long lists of content.
                      </p>
                      <div>
                        <h3 class="no_toc details-header">Related docs and resources</h3>
                        <ul class="resources-list">
                          <li>
                            <a class="filled-button" href="/ui/layout/scrolling/slivers"><span class="material-symbols" aria-hidden="true" translate="no">article</span>Sliver documentation</a>
                          </li>
                          <li>
                            <a class="filled-button" href="https://blog.flutter.dev/slivers-demystified-6ff68ab0296f"><span class="material-symbols" aria-hidden="true" translate="no">article</span>Slivers demystified</a>
                          </li>
                          <li>
                            <a class="filled-button" href="https://youtu.be/ORiTTaVY6mM"><span class="material-symbols" aria-hidden="true" translate="no">play_arrow</span>SliverList and SliverGrid WotW</a>
                          </li>
                          <li>
                            <a class="filled-button" href="https://youtu.be/R9C5KMJKluE"><span class="material-symbols" aria-hidden="true" translate="no">play_arrow</span>SliverAppBar WotW</a>
                          </li>
                          <li>
                            <a class="filled-button" href="https://api.flutter.dev/flutter/widgets/CustomScrollView-class.html"><span class="material-symbols" aria-hidden="true" translate="no">description</span>CustomScrollView class</a>
                          </li>
                          <li>
                            <a class="filled-button" href="https://api.flutter.dev/flutter/material/SliverAppBar-class.html"><span class="material-symbols" aria-hidden="true" translate="no">description</span>SliverAppBar class</a>
                          </li>
                          <li>
                            <a class="filled-button" href="https://api.flutter.dev/flutter/widgets/SliverGrid-class.html"><span class="material-symbols" aria-hidden="true" translate="no">description</span>SliverGrid class</a>
                          </li>
                          <li>
                            <a class="filled-button" href="https://api.flutter.dev/flutter/widgets/SliverList-class.html"><span class="material-symbols" aria-hidden="true" translate="no">description</span>SliverList class</a>
                          </li>
                        </ul>
                      </div>
                    </div>
                  </div>
                  <div id="viewport" class="card outlined-card filled-card expandable-card collapsed glossary-card" data-partial-matches="viewport scrolling ui" data-full-matches>
                    <div class="card-header">
                      <h2 class="card-title">Viewport</h2>
                      <div class="card-header-buttons">
                        <a class="text-button icon-button share-button" aria-label="Link to Viewport card" title="Link to card" href="#viewport"><span class="material-symbols" aria-hidden="true" translate="no">tag</span></a>
                        <button class="text-button icon-button expand-button" aria-expanded="false" aria-controls="viewport-content" aria-label="Expand or collapse Viewport card" title="Expand or collapse card"><span class="material-symbols" aria-hidden="true" translate="no">keyboard_arrow_up</span></button>
                      </div>
                    </div>
                    <div class="initial-content">
                      A widget that displays a subset of its children
                      based on the current scroll offset.
                    </div>
                    <div id="viewport-content" class="card-content expandable-content">
                      <p>
                        A viewport is the visual component of the scrolling machinery.
                        It displays a subset of its children (usually slivers)
                        based on the current scroll offset.
                        It is often described as being "bigger on the inside"
                        because it can contain more content than is visible on the screen.
                      </p>
                      <div>
                        <h3 class="no_toc details-header">Related docs and resources</h3>
                        <ul class="resources-list">
                          <li>
                            <a class="filled-button" href="https://api.flutter.dev/flutter/widgets/Viewport-class.html"><span class="material-symbols" aria-hidden="true" translate="no">description</span>Viewport class</a>
                          </li>
                          <li>
                            <a class="filled-button" href="/ui/layout/scrolling/slivers"><span class="material-symbols" aria-hidden="true" translate="no">article</span>Slivers</a>
                          </li>
                        </ul>
                      </div>
                    </div>
                  </div>
                  <div id="widget" class="card outlined-card filled-card expandable-card collapsed glossary-card" data-partial-matches="widget ui widgets" data-full-matches>
                    <div class="card-header">
                      <h2 class="card-title">Widget</h2>
                      <div class="card-header-buttons">
                        <a class="text-button icon-button share-button" aria-label="Link to Widget card" title="Link to card" href="#widget"><span class="material-symbols" aria-hidden="true" translate="no">tag</span></a>
                        <button class="text-button icon-button expand-button" aria-expanded="false" aria-controls="widget-content" aria-label="Expand or collapse Widget card" title="Expand or collapse card"><span class="material-symbols" aria-hidden="true" translate="no">keyboard_arrow_up</span></button>
                      </div>
                    </div>
                    <div class="initial-content">The basic building block of a Flutter user interface.</div>
                    <div id="widget-content" class="card-content expandable-content">
                      <p>An immutable description of part of a user interface.</p>
                      <p>
                        In Flutter, almost everything is a <em>widget</em>.
                        Widgets are the fundamental building blocks you use to
                        create your application's UI with Flutter.
                        Each widget is an immutable declaration of _what the UI should
                        look like based on its current configuration and state.
                      </p>
                      <p>
                        Widgets are composed together in a hierarchy to form the widget tree.
                        When a widget's state changes, the Flutter framework
                        rebuilds the necessary parts of the tree to update the UI.
                      </p>
                      <p>
                        The two primary types of widgets are
                        <a href="https://api.flutter.dev/flutter/widgets/StatelessWidget-class.html"><code>StatelessWidget</code></a>, which have no mutable state, and
                        <a href="https://api.flutter.dev/flutter/widgets/StatefulWidget-class.html"><code>StatefulWidget</code></a>, which have a persistent 
                        <a href="https://api.flutter.dev/flutter/widgets/State-class.html">state</a> that can be updated.
                      </p>
                      <div>
                        <h3 class="no_toc details-header">Related docs and resources</h3>
                        <ul class="resources-list">
                          <li>
                            <a class="filled-button" href="/learn/pathway/tutorial/widget-fundamentals"><span class="material-symbols" aria-hidden="true" translate="no">article</span>Widget fundamentals</a>
                          </li>
                          <li>
                            <a class="filled-button" href="/ui/widgets"><span class="material-symbols" aria-hidden="true" translate="no">article</span>Widget catalog</a>
                          </li>
                          <li>
                            <a class="filled-button" href="https://api.flutter.dev/flutter/widgets/Widget-class.html"><span class="material-symbols" aria-hidden="true" translate="no">description</span>Widget class</a>
                          </li>
                        </ul>
                      </div>
                    </div>
                  </div>
                </div>
              </section>
              <div id="trailing-content" data-nosnippet="true">
                <!--@site_shared:feedback data={"issueUrl":"https://github.com/flutter/website/issues/new?template=1_page_issue.yml&amp;page-url=https://docs.flutter.tw/resources/glossary"}-->
                <div id="page-feedback">
                  <div class="feedback">
                    <div>Was this page's content helpful?</div>
                    <div class="feedback-buttons">
                      <button class="text-button icon-button" title="Yes, this page was helpful."><span class="material-symbols" aria-hidden="true" translate="no">thumb_up</span></button>
                      <button class="text-button icon-button" title="No, this page was not helpful or had an issue"><span class="material-symbols" aria-hidden="true" translate="no">thumb_down</span></button>
                    </div>
                  </div>
                </div>
                <!--/@site_shared:feedback-->
                <p id="page-github-links">
                  <span>Unless stated otherwise, the documentation on this site reflects Flutter 3.47. Page last updated on 2026-10-25. </span>
                  <a title="Report an issue with this page" target="_blank" rel="noopener" href="https://github.com/flutter/website/issues/new?template=1_page_issue.yml&amp;page-url=https://docs.flutter.tw/resources/glossary">Report an issue</a>.
                </p>
              </div>
            </article>
          </div>
        </main>
      </div>
      <footer id="site-footer" data-nosnippet="true">
        <div class="footer-section footer-main">
          <a class="brand" title="Flutter" href="/">
            <img alt="Flutter logo" width="164" src="/assets/images/branding/flutter/logo+text/horizontal/white.svg"/>
          </a>
          <div class="footer-social-links">
            <a rel="noopener" title="Flutter's YouTube channel" href="https://youtube.com/@flutterdev" target="_blank"><svg><use href="/assets/images/social/youtube.svg#youtube"></use></svg></a>
            <a rel="noopener" title="Flutter's GitHub organization" href="https://github.com/flutter" target="_blank"><svg><use href="/assets/images/social/github.svg#github"></use></svg></a>
            <a rel="noopener" title="Flutter's Bluesky profile" href="https://bsky.app/profile/flutter.dev" target="_blank"><svg><use href="/assets/images/social/bluesky.svg#bluesky"></use></svg></a>
            <a rel="noopener" title="Flutter's X (Twitter) profile" href="https://twitter.com/FlutterDev" target="_blank"><svg><use href="/assets/images/social/x.svg#x"></use></svg></a>
          </div>
        </div>
        <div class="footer-section footer-tray">
          <div class="footer-licenses">
            Except as otherwise noted, this site is licensed under a 
            <a href="https://creativecommons.org/licenses/by/4.0/">Creative Commons Attribution 4.0 International License,</a>
             and code samples are licensed under the 
            <a href="https://opensource.org/licenses/BSD-3-Clause">3-Clause BSD License.</a>
          </div>
          <div class="footer-utility-links">
            <ul>
              <li><a title="Terms of use" href="/tos">Terms</a></li>
              <li><a title="Brand usage guidelines" href="/brand">Brand</a></li>
              <li>
                <a rel="noopener" title="Privacy policy" href="https://policies.google.com/privacy" target="_blank">Privacy</a>
              </li>
              <li><a title="Security philosophy and practices" href="/security">Security</a></li>
            </ul>
            <div class="footer-technology">
              <a class="jaspr-badge-link" rel="noopener" title="This site is built with the Jaspr web framework for Dart." href="https://jaspr.site" target="_blank">
                <span><svg fill="none" viewBox="0 0 106 40" width="106px" height="40px"><rect rx="10" width="106" height="40" fill="#F5F5F5"></rect><path stroke-linejoin="round" d="M14.8115 26.0483C14.8115 26.0483 16.5768 27.9534 18.269 29.3852L21.4834 25.4226L22.5262 26.0483C23.9862 23.5455 22.3041 22.096 22.3041 22.096C24.1264 21.8356 23.7359 19.1022 23.7359 19.1022C22.8248 18.0608 22.6946 17.0195 22.8248 16.3687C22.9454 15.8288 22.754 15.2687 22.5644 14.9368L23.7359 13.6352L24.6139 13.7432C24.6139 11.6576 21.2503 10.6148 20.8598 10.6148C20.4693 10.6148 19.4404 11.4224 19.1801 12.3335L16.0561 12.5939C15.6458 8.11202 9.46732 13.0672 9.59749 14.3689L10.6403 13.9517L12.021 15.848C9.93835 17.41 9.59748 20.8342 9.59748 20.8342L11.3702 20.534C10.459 22.3563 10.7193 24.4389 10.7193 24.4389L12.3088 23.7541C12.439 25.4463 13.7687 27.2996 13.7687 27.2996L14.8115 26.0483Z" stroke="#0E1117" stroke-width="1.25"></path><path stroke-linejoin="round" d="M16.0558 12.5941C15.4049 12.5941 15.0197 13.1178 13.9769 14.3691C12.9341 15.6205 13.4524 15.4578 11.6301 16.1086" stroke="#0E1117" stroke-width="1.25"></path><path stroke-linejoin="round" d="M19.1799 12.3338C20.2213 12.5941 21.6531 13.3751 22.5642 14.9371" stroke="#0E1117" stroke-width="1.25"></path><path stroke-linejoin="round" d="M11.3701 20.5339C11.3701 20.5339 12.1511 19.1021 13.8433 18.3211C12.0209 19.1021 11.3701 20.5339 11.3701 20.5339Z" stroke="#0E1117" stroke-width="1.25"></path><path d="M21.5648 18.9821C21.5648 18.9821 20.0028 18.7218 20.2632 19.8933C20.5813 21.3251 22.7363 20.6743 22.6061 19.7631C22.6061 18.9821 21.5648 18.9821 21.5648 18.9821Z" fill="#0E1117"></path><path stroke-linejoin="round" d="M22.4341 22.0961C21.2626 22.0961 18.9826 22.2943 17.7312 21.46C19.1891 22.7114 23.3603 21.0429 22.9432 24.797C23.3603 23.1285 22.5281 22.5028 22.4341 22.0961Z" stroke="#0E1117" stroke-width="1.25"></path><path d="M48.6833 14.4545H51.7231V24.5966C51.7231 25.5341 51.5124 26.3485 51.091 27.0398C50.6743 27.7311 50.0943 28.2637 49.3509 28.6378C48.6075 29.0118 47.7434 29.1989 46.7586 29.1989C45.8826 29.1989 45.0872 29.045 44.3722 28.7372C43.662 28.4247 43.0985 27.9512 42.6819 27.3168C42.2652 26.6776 42.0592 25.875 42.064 24.9091H45.125C45.1345 25.2926 45.2126 25.6217 45.3594 25.8963C45.5109 26.1662 45.7169 26.3745 45.9773 26.5213C46.2425 26.6634 46.555 26.7344 46.9148 26.7344C47.2936 26.7344 47.6132 26.6539 47.8736 26.4929C48.1388 26.3272 48.34 26.0857 48.4773 25.7685C48.6146 25.4512 48.6833 25.0606 48.6833 24.5966V14.4545ZM57.3196 29.206C56.6236 29.206 56.0034 29.0852 55.4589 28.8438C54.9143 28.5975 54.4835 28.2353 54.1662 27.7571C53.8537 27.2741 53.6975 26.6728 53.6975 25.9531C53.6975 25.3471 53.8088 24.8381 54.0313 24.4261C54.2538 24.0142 54.5569 23.6828 54.9404 23.4318C55.3239 23.1809 55.7595 22.9915 56.2472 22.8636C56.7396 22.7358 57.2557 22.6458 57.7955 22.5938C58.43 22.5275 58.9413 22.4659 59.3296 22.4091C59.7178 22.3475 59.9996 22.2576 60.1748 22.1392C60.35 22.0208 60.4375 21.8456 60.4375 21.6136V21.571C60.4375 21.1212 60.2955 20.7732 60.0114 20.527C59.7321 20.2808 59.3343 20.1577 58.8182 20.1577C58.2737 20.1577 57.8405 20.2784 57.5185 20.5199C57.1965 20.7566 56.9835 21.0549 56.8793 21.4148L54.081 21.1875C54.2231 20.5246 54.5024 19.9517 54.9191 19.4688C55.3357 18.9811 55.8732 18.607 56.5313 18.3466C57.1942 18.0814 57.9612 17.9489 58.8324 17.9489C59.4385 17.9489 60.0185 18.0199 60.5725 18.1619C61.1312 18.304 61.626 18.5241 62.0569 18.8224C62.4925 19.1207 62.8357 19.5043 63.0867 19.973C63.3376 20.437 63.4631 20.9934 63.4631 21.642V29H60.5938V27.4872H60.5086C60.3334 27.8281 60.099 28.1288 59.8054 28.3892C59.5119 28.6449 59.1591 28.8461 58.7472 28.9929C58.3353 29.1349 57.8594 29.206 57.3196 29.206ZM58.1861 27.1179C58.6312 27.1179 59.0242 27.0303 59.3651 26.8551C59.706 26.6752 59.9735 26.4337 60.1677 26.1307C60.3618 25.8277 60.4589 25.4844 60.4589 25.1009V23.9432C60.3642 24.0047 60.2339 24.0616 60.0682 24.1136C59.9072 24.161 59.725 24.206 59.5214 24.2486C59.3178 24.2865 59.1142 24.322 58.9106 24.3551C58.707 24.3835 58.5223 24.4096 58.3566 24.4332C58.0015 24.4853 57.6913 24.5682 57.4262 24.6818C57.161 24.7955 56.9551 24.9493 56.8083 25.1435C56.6615 25.3329 56.5881 25.5696 56.5881 25.8537C56.5881 26.2656 56.7373 26.5805 57.0356 26.7983C57.3386 27.0114 57.7221 27.1179 58.1861 27.1179ZM74.8871 21.2017L72.1172 21.3722C72.0699 21.1354 71.9681 20.9223 71.8118 20.733C71.6556 20.5388 71.4496 20.3849 71.1939 20.2713C70.943 20.1529 70.6423 20.0938 70.2919 20.0938C69.8232 20.0938 69.4278 20.1932 69.1059 20.392C68.7839 20.5862 68.6229 20.8466 68.6229 21.1733C68.6229 21.4337 68.7271 21.6539 68.9354 21.8338C69.1437 22.0137 69.5012 22.1581 70.0079 22.267L71.9823 22.6648C73.0429 22.8826 73.8336 23.233 74.3544 23.7159C74.8753 24.1989 75.1357 24.8333 75.1357 25.6193C75.1357 26.3343 74.925 26.9616 74.5036 27.5014C74.0869 28.0412 73.514 28.4626 72.7848 28.7656C72.0604 29.0639 71.2247 29.2131 70.2777 29.2131C68.8336 29.2131 67.683 28.9124 66.826 28.3111C65.9738 27.705 65.4742 26.8812 65.3275 25.8395L68.3033 25.6832C68.3933 26.1236 68.6111 26.4598 68.9567 26.6918C69.3024 26.919 69.7451 27.0327 70.2848 27.0327C70.8151 27.0327 71.2413 26.9309 71.5633 26.7273C71.89 26.5189 72.0557 26.2514 72.0604 25.9247C72.0557 25.6501 71.9397 25.4252 71.7124 25.25C71.4851 25.0701 71.1348 24.9328 70.6613 24.8381L68.7721 24.4616C67.7067 24.2486 66.9136 23.8793 66.3928 23.3537C65.8767 22.8281 65.6187 22.1581 65.6187 21.3438C65.6187 20.643 65.808 20.0393 66.1868 19.5327C66.5704 19.026 67.1078 18.6354 67.7991 18.3608C68.4951 18.0862 69.3095 17.9489 70.2422 17.9489C71.6201 17.9489 72.7044 18.2401 73.4951 18.8224C74.2905 19.4048 74.7545 20.1979 74.8871 21.2017ZM77.0409 33.0909V18.0909H80.0238V19.9233H80.1588C80.2914 19.6297 80.4831 19.3314 80.7341 19.0284C80.9897 18.7206 81.3212 18.465 81.7284 18.2614C82.1403 18.053 82.6517 17.9489 83.2625 17.9489C84.0579 17.9489 84.7918 18.1572 85.4642 18.5739C86.1365 18.9858 86.6739 19.6084 87.0764 20.4418C87.4789 21.2704 87.6801 22.3097 87.6801 23.5597C87.6801 24.7765 87.4836 25.804 87.0906 26.642C86.7023 27.4754 86.172 28.1075 85.4997 28.5384C84.8321 28.9645 84.084 29.1776 83.2554 29.1776C82.6682 29.1776 82.1687 29.0805 81.7568 28.8864C81.3496 28.6922 81.0158 28.4484 80.7554 28.1548C80.495 27.8565 80.2961 27.5559 80.1588 27.2528H80.0665V33.0909H77.0409ZM80.0025 23.5455C80.0025 24.1941 80.0925 24.7599 80.2724 25.2429C80.4523 25.7259 80.7128 26.1023 81.0537 26.3722C81.3946 26.6373 81.8089 26.7699 82.2966 26.7699C82.789 26.7699 83.2057 26.6349 83.5466 26.3651C83.8875 26.0904 84.1455 25.7116 84.3207 25.2287C84.5006 24.741 84.5906 24.1799 84.5906 23.5455C84.5906 22.9157 84.503 22.3617 84.3278 21.8835C84.1526 21.4053 83.8946 21.0312 83.5537 20.7614C83.2128 20.4915 82.7937 20.3565 82.2966 20.3565C81.8041 20.3565 81.3875 20.4867 81.0466 20.7472C80.7104 21.0076 80.4523 21.3769 80.2724 21.8551C80.0925 22.3333 80.0025 22.8968 80.0025 23.5455ZM89.6971 29V18.0909H92.6304V19.9943H92.744C92.9429 19.3172 93.2767 18.8059 93.7454 18.4602C94.2142 18.1098 94.754 17.9347 95.3647 17.9347C95.5163 17.9347 95.6796 17.9441 95.8548 17.9631C96.03 17.982 96.1839 18.008 96.3165 18.0412V20.7259C96.1744 20.6832 95.9779 20.6454 95.727 20.6122C95.476 20.5791 95.2464 20.5625 95.038 20.5625C94.593 20.5625 94.1952 20.6596 93.8449 20.8537C93.4992 21.0431 93.2246 21.3082 93.021 21.6491C92.8221 21.9901 92.7227 22.383 92.7227 22.8281V29H89.6971Z" fill="#0E1117"></path><path d="M56.9197 14V7.45455H59.3167C59.7812 7.45455 60.1658 7.53125 60.4705 7.68466C60.7752 7.83594 61.0032 8.04155 61.1545 8.30149C61.3057 8.5593 61.3814 8.85014 61.3814 9.17401C61.3814 9.44673 61.3313 9.67685 61.2312 9.86435C61.131 10.0497 60.9968 10.1989 60.8285 10.3118C60.6623 10.4226 60.479 10.5036 60.2787 10.5547V10.6186C60.4961 10.6293 60.7081 10.6996 60.9147 10.8295C61.1236 10.9574 61.2961 11.1396 61.4325 11.3761C61.5689 11.6126 61.637 11.9002 61.637 12.239C61.637 12.5735 61.5582 12.8739 61.4005 13.1403C61.245 13.4045 61.0042 13.6143 60.6782 13.7699C60.3522 13.9233 59.9357 14 59.4286 14H56.9197ZM57.9073 13.1531H59.3327C59.8057 13.1531 60.1445 13.0614 60.3491 12.8782C60.5536 12.695 60.6559 12.4659 60.6559 12.1911C60.6559 11.9844 60.6037 11.7947 60.4993 11.6222C60.3949 11.4496 60.2457 11.3121 60.0518 11.2099C59.8601 11.1076 59.6321 11.0565 59.3679 11.0565H57.9073V13.1531ZM57.9073 10.2862H59.2304C59.452 10.2862 59.6513 10.2436 59.8281 10.1584C60.0071 10.0732 60.1488 9.95384 60.2532 9.80043C60.3597 9.64489 60.413 9.46165 60.413 9.25071C60.413 8.98011 60.3182 8.7532 60.1285 8.56996C59.9389 8.38672 59.6481 8.2951 59.256 8.2951H57.9073V10.2862ZM65.8414 11.9641V9.09091H66.8002V14H65.8606V13.1499H65.8095C65.6965 13.4119 65.5154 13.6303 65.2661 13.805C65.019 13.9776 64.7111 14.0639 64.3425 14.0639C64.0271 14.0639 63.748 13.9947 63.5051 13.8562C63.2644 13.7156 63.0747 13.5078 62.9362 13.233C62.7999 12.9581 62.7317 12.6183 62.7317 12.2134V9.09091H63.6873V12.0984C63.6873 12.4329 63.78 12.6992 63.9654 12.8974C64.1507 13.0955 64.3915 13.1946 64.6877 13.1946C64.8666 13.1946 65.0445 13.1499 65.2214 13.0604C65.4004 12.9709 65.5484 12.8356 65.6656 12.6545C65.785 12.4734 65.8435 12.2433 65.8414 11.9641ZM68.0842 14V9.09091H69.0398V14H68.0842ZM68.5668 8.33345C68.4006 8.33345 68.2579 8.27805 68.1386 8.16726C68.0214 8.05433 67.9628 7.9201 67.9628 7.76456C67.9628 7.60689 68.0214 7.47266 68.1386 7.36186C68.2579 7.24893 68.4006 7.19247 68.5668 7.19247C68.733 7.19247 68.8747 7.24893 68.9919 7.36186C69.1112 7.47266 69.1709 7.60689 69.1709 7.76456C69.1709 7.9201 69.1112 8.05433 68.9919 8.16726C68.8747 8.27805 68.733 8.33345 68.5668 8.33345ZM71.281 7.45455V14H70.3254V7.45455H71.281ZM74.8582 9.09091V9.85795H72.1767V9.09091H74.8582ZM72.8958 7.91477H73.8514V12.5586C73.8514 12.744 73.8791 12.8835 73.9345 12.9773C73.9899 13.0689 74.0613 13.1317 74.1487 13.1658C74.2382 13.1978 74.3351 13.2138 74.4395 13.2138C74.5162 13.2138 74.5833 13.2085 74.6409 13.1978C74.6984 13.1871 74.7431 13.1786 74.7751 13.1722L74.9477 13.9616C74.8923 13.983 74.8135 14.0043 74.7112 14.0256C74.6089 14.049 74.4811 14.0618 74.3277 14.0639C74.0762 14.0682 73.8419 14.0234 73.6245 13.9297C73.4072 13.8359 73.2314 13.6911 73.0972 13.495C72.963 13.299 72.8958 13.0529 72.8958 12.7567V7.91477ZM79.3614 14L77.9168 9.09091H78.9044L79.8664 12.696H79.9143L80.8795 9.09091H81.8671L82.8259 12.68H82.8738L83.8294 9.09091H84.817L83.3756 14H82.4008L81.4037 10.4556H81.3301L80.333 14H79.3614ZM85.7239 14V9.09091H86.6795V14H85.7239ZM86.2065 8.33345C86.0403 8.33345 85.8975 8.27805 85.7782 8.16726C85.661 8.05433 85.6024 7.9201 85.6024 7.76456C85.6024 7.60689 85.661 7.47266 85.7782 7.36186C85.8975 7.24893 86.0403 7.19247 86.2065 7.19247C86.3727 7.19247 86.5144 7.24893 86.6315 7.36186C86.7509 7.47266 86.8105 7.60689 86.8105 7.76456C86.8105 7.9201 86.7509 8.05433 86.6315 8.16726C86.5144 8.27805 86.3727 8.33345 86.2065 8.33345ZM90.2566 9.09091V9.85795H87.5752V9.09091H90.2566ZM88.2943 7.91477H89.2499V12.5586C89.2499 12.744 89.2776 12.8835 89.333 12.9773C89.3884 13.0689 89.4598 13.1317 89.5471 13.1658C89.6366 13.1978 89.7336 13.2138 89.838 13.2138C89.9147 13.2138 89.9818 13.2085 90.0393 13.1978C90.0968 13.1871 90.1416 13.1786 90.1735 13.1722L90.3461 13.9616C90.2907 13.983 90.2119 14.0043 90.1096 14.0256C90.0073 14.049 89.8795 14.0618 89.7261 14.0639C89.4747 14.0682 89.2403 14.0234 89.023 13.9297C88.8056 13.8359 88.6299 13.6911 88.4956 13.495C88.3614 13.299 88.2943 13.0529 88.2943 12.7567V7.91477ZM92.3748 11.0852V14H91.4192V7.45455H92.362V9.88991H92.4227C92.5378 9.62571 92.7136 9.41584 92.9501 9.2603C93.1866 9.10476 93.4955 9.02699 93.8769 9.02699C94.2136 9.02699 94.5076 9.09624 94.759 9.23473C95.0126 9.37322 95.2086 9.5799 95.3471 9.85476C95.4877 10.1275 95.558 10.4684 95.558 10.8775V14H94.6024V10.9925C94.6024 10.6325 94.5097 10.3533 94.3244 10.1552C94.139 9.9549 93.8812 9.85476 93.5509 9.85476C93.3251 9.85476 93.1227 9.9027 92.9437 9.99858C92.7668 10.0945 92.6273 10.2351 92.525 10.4205C92.4249 10.6037 92.3748 10.8253 92.3748 11.0852Z" fill="#0E1117"></path></svg></span>
                <span><svg fill="none" viewBox="0 0 106 40" width="106px" height="40px"><rect rx="10" width="106" height="40" fill="#F5F5F5"></rect><path stroke-linejoin="round" d="M14.8115 26.0483C14.8115 26.0483 16.5768 27.9534 18.269 29.3852L21.4834 25.4226L22.5262 26.0483C23.9862 23.5455 22.3041 22.096 22.3041 22.096C24.1264 21.8356 23.7359 19.1022 23.7359 19.1022C22.8248 18.0608 22.6946 17.0195 22.8248 16.3687C22.9454 15.8288 22.754 15.2687 22.5644 14.9368L23.7359 13.6352L24.6139 13.7432C24.6139 11.6576 21.2503 10.6148 20.8598 10.6148C20.4693 10.6148 19.4404 11.4224 19.1801 12.3335L16.0561 12.5939C15.6458 8.11202 9.46732 13.0672 9.59749 14.3689L10.6403 13.9517L12.021 15.848C9.93835 17.41 9.59748 20.8342 9.59748 20.8342L11.3702 20.534C10.459 22.3563 10.7193 24.4389 10.7193 24.4389L12.3088 23.7541C12.439 25.4463 13.7687 27.2996 13.7687 27.2996L14.8115 26.0483Z" stroke="#0066B4" stroke-width="1.25"></path><path stroke-linejoin="round" d="M16.0558 12.5941C15.4049 12.5941 15.0197 13.1178 13.9769 14.3691C12.9341 15.6205 13.4524 15.4578 11.6301 16.1086" stroke="#0066B4" stroke-width="1.25"></path><path stroke-linejoin="round" d="M19.1799 12.3338C20.2213 12.5941 21.6531 13.3751 22.5642 14.9371" stroke="#0066B4" stroke-width="1.25"></path><path stroke-linejoin="round" d="M11.3701 20.5339C11.3701 20.5339 12.1511 19.1021 13.8433 18.3211C12.0209 19.1021 11.3701 20.5339 11.3701 20.5339Z" stroke="#0066B4" stroke-width="1.25"></path><path d="M21.5648 18.9821C21.5648 18.9821 20.0028 18.7218 20.2632 19.8933C20.5813 21.3251 22.7363 20.6743 22.6061 19.7631C22.6061 18.9821 21.5648 18.9821 21.5648 18.9821Z" fill="#0066B4"></path><path stroke-linejoin="round" d="M22.4341 22.0961C21.2626 22.0961 18.9826 22.2943 17.7312 21.46C19.1891 22.7114 23.3603 21.0429 22.9432 24.797C23.3603 23.1285 22.5281 22.5028 22.4341 22.0961Z" stroke="#0066B4" stroke-width="1.25"></path><path d="M48.6833 14.4545H51.7231V24.5966C51.7231 25.5341 51.5124 26.3485 51.091 27.0398C50.6743 27.7311 50.0943 28.2637 49.3509 28.6378C48.6075 29.0118 47.7434 29.1989 46.7586 29.1989C45.8826 29.1989 45.0872 29.045 44.3722 28.7372C43.662 28.4247 43.0985 27.9512 42.6819 27.3168C42.2652 26.6776 42.0592 25.875 42.064 24.9091H45.125C45.1345 25.2926 45.2126 25.6217 45.3594 25.8963C45.5109 26.1662 45.7169 26.3745 45.9773 26.5213C46.2425 26.6634 46.555 26.7344 46.9148 26.7344C47.2936 26.7344 47.6132 26.6539 47.8736 26.4929C48.1388 26.3272 48.34 26.0857 48.4773 25.7685C48.6146 25.4512 48.6833 25.0606 48.6833 24.5966V14.4545ZM57.3196 29.206C56.6236 29.206 56.0034 29.0852 55.4589 28.8438C54.9143 28.5975 54.4835 28.2353 54.1662 27.7571C53.8537 27.2741 53.6975 26.6728 53.6975 25.9531C53.6975 25.3471 53.8088 24.8381 54.0313 24.4261C54.2538 24.0142 54.5569 23.6828 54.9404 23.4318C55.3239 23.1809 55.7595 22.9915 56.2472 22.8636C56.7396 22.7358 57.2557 22.6458 57.7955 22.5938C58.43 22.5275 58.9413 22.4659 59.3296 22.4091C59.7178 22.3475 59.9996 22.2576 60.1748 22.1392C60.35 22.0208 60.4375 21.8456 60.4375 21.6136V21.571C60.4375 21.1212 60.2955 20.7732 60.0114 20.527C59.7321 20.2808 59.3343 20.1577 58.8182 20.1577C58.2737 20.1577 57.8405 20.2784 57.5185 20.5199C57.1965 20.7566 56.9835 21.0549 56.8793 21.4148L54.081 21.1875C54.2231 20.5246 54.5024 19.9517 54.9191 19.4688C55.3357 18.9811 55.8732 18.607 56.5313 18.3466C57.1942 18.0814 57.9612 17.9489 58.8324 17.9489C59.4385 17.9489 60.0185 18.0199 60.5725 18.1619C61.1312 18.304 61.626 18.5241 62.0569 18.8224C62.4925 19.1207 62.8357 19.5043 63.0867 19.973C63.3376 20.437 63.4631 20.9934 63.4631 21.642V29H60.5938V27.4872H60.5086C60.3334 27.8281 60.099 28.1288 59.8054 28.3892C59.5119 28.6449 59.1591 28.8461 58.7472 28.9929C58.3353 29.1349 57.8594 29.206 57.3196 29.206ZM58.1861 27.1179C58.6312 27.1179 59.0242 27.0303 59.3651 26.8551C59.706 26.6752 59.9735 26.4337 60.1677 26.1307C60.3618 25.8277 60.4589 25.4844 60.4589 25.1009V23.9432C60.3642 24.0047 60.2339 24.0616 60.0682 24.1136C59.9072 24.161 59.725 24.206 59.5214 24.2486C59.3178 24.2865 59.1142 24.322 58.9106 24.3551C58.707 24.3835 58.5223 24.4096 58.3566 24.4332C58.0015 24.4853 57.6913 24.5682 57.4262 24.6818C57.161 24.7955 56.9551 24.9493 56.8083 25.1435C56.6615 25.3329 56.5881 25.5696 56.5881 25.8537C56.5881 26.2656 56.7373 26.5805 57.0356 26.7983C57.3386 27.0114 57.7221 27.1179 58.1861 27.1179ZM74.8871 21.2017L72.1172 21.3722C72.0699 21.1354 71.9681 20.9223 71.8118 20.733C71.6556 20.5388 71.4496 20.3849 71.1939 20.2713C70.943 20.1529 70.6423 20.0938 70.2919 20.0938C69.8232 20.0938 69.4278 20.1932 69.1059 20.392C68.7839 20.5862 68.6229 20.8466 68.6229 21.1733C68.6229 21.4337 68.7271 21.6539 68.9354 21.8338C69.1437 22.0137 69.5012 22.1581 70.0079 22.267L71.9823 22.6648C73.0429 22.8826 73.8336 23.233 74.3544 23.7159C74.8753 24.1989 75.1357 24.8333 75.1357 25.6193C75.1357 26.3343 74.925 26.9616 74.5036 27.5014C74.0869 28.0412 73.514 28.4626 72.7848 28.7656C72.0604 29.0639 71.2247 29.2131 70.2777 29.2131C68.8336 29.2131 67.683 28.9124 66.826 28.3111C65.9738 27.705 65.4742 26.8812 65.3275 25.8395L68.3033 25.6832C68.3933 26.1236 68.6111 26.4598 68.9567 26.6918C69.3024 26.919 69.7451 27.0327 70.2848 27.0327C70.8151 27.0327 71.2413 26.9309 71.5633 26.7273C71.89 26.5189 72.0557 26.2514 72.0604 25.9247C72.0557 25.6501 71.9397 25.4252 71.7124 25.25C71.4851 25.0701 71.1348 24.9328 70.6613 24.8381L68.7721 24.4616C67.7067 24.2486 66.9136 23.8793 66.3928 23.3537C65.8767 22.8281 65.6187 22.1581 65.6187 21.3438C65.6187 20.643 65.808 20.0393 66.1868 19.5327C66.5704 19.026 67.1078 18.6354 67.7991 18.3608C68.4951 18.0862 69.3095 17.9489 70.2422 17.9489C71.6201 17.9489 72.7044 18.2401 73.4951 18.8224C74.2905 19.4048 74.7545 20.1979 74.8871 21.2017ZM77.0409 33.0909V18.0909H80.0238V19.9233H80.1588C80.2914 19.6297 80.4831 19.3314 80.7341 19.0284C80.9897 18.7206 81.3212 18.465 81.7284 18.2614C82.1403 18.053 82.6517 17.9489 83.2625 17.9489C84.0579 17.9489 84.7918 18.1572 85.4642 18.5739C86.1365 18.9858 86.6739 19.6084 87.0764 20.4418C87.4789 21.2704 87.6801 22.3097 87.6801 23.5597C87.6801 24.7765 87.4836 25.804 87.0906 26.642C86.7023 27.4754 86.172 28.1075 85.4997 28.5384C84.8321 28.9645 84.084 29.1776 83.2554 29.1776C82.6682 29.1776 82.1687 29.0805 81.7568 28.8864C81.3496 28.6922 81.0158 28.4484 80.7554 28.1548C80.495 27.8565 80.2961 27.5559 80.1588 27.2528H80.0665V33.0909H77.0409ZM80.0025 23.5455C80.0025 24.1941 80.0925 24.7599 80.2724 25.2429C80.4523 25.7259 80.7128 26.1023 81.0537 26.3722C81.3946 26.6373 81.8089 26.7699 82.2966 26.7699C82.789 26.7699 83.2057 26.6349 83.5466 26.3651C83.8875 26.0904 84.1455 25.7116 84.3207 25.2287C84.5006 24.741 84.5906 24.1799 84.5906 23.5455C84.5906 22.9157 84.503 22.3617 84.3278 21.8835C84.1526 21.4053 83.8946 21.0312 83.5537 20.7614C83.2128 20.4915 82.7937 20.3565 82.2966 20.3565C81.8041 20.3565 81.3875 20.4867 81.0466 20.7472C80.7104 21.0076 80.4523 21.3769 80.2724 21.8551C80.0925 22.3333 80.0025 22.8968 80.0025 23.5455ZM89.6971 29V18.0909H92.6304V19.9943H92.744C92.9429 19.3172 93.2767 18.8059 93.7454 18.4602C94.2142 18.1098 94.754 17.9347 95.3647 17.9347C95.5163 17.9347 95.6796 17.9441 95.8548 17.9631C96.03 17.982 96.1839 18.008 96.3165 18.0412V20.7259C96.1744 20.6832 95.9779 20.6454 95.727 20.6122C95.476 20.5791 95.2464 20.5625 95.038 20.5625C94.593 20.5625 94.1952 20.6596 93.8449 20.8537C93.4992 21.0431 93.2246 21.3082 93.021 21.6491C92.8221 21.9901 92.7227 22.383 92.7227 22.8281V29H89.6971Z" fill="#0E1117"></path><path d="M56.9197 14V7.45455H59.3167C59.7812 7.45455 60.1658 7.53125 60.4705 7.68466C60.7752 7.83594 61.0032 8.04155 61.1545 8.30149C61.3057 8.5593 61.3814 8.85014 61.3814 9.17401C61.3814 9.44673 61.3313 9.67685 61.2312 9.86435C61.131 10.0497 60.9968 10.1989 60.8285 10.3118C60.6623 10.4226 60.479 10.5036 60.2787 10.5547V10.6186C60.4961 10.6293 60.7081 10.6996 60.9147 10.8295C61.1236 10.9574 61.2961 11.1396 61.4325 11.3761C61.5689 11.6126 61.637 11.9002 61.637 12.239C61.637 12.5735 61.5582 12.8739 61.4005 13.1403C61.245 13.4045 61.0042 13.6143 60.6782 13.7699C60.3522 13.9233 59.9357 14 59.4286 14H56.9197ZM57.9073 13.1531H59.3327C59.8057 13.1531 60.1445 13.0614 60.3491 12.8782C60.5536 12.695 60.6559 12.4659 60.6559 12.1911C60.6559 11.9844 60.6037 11.7947 60.4993 11.6222C60.3949 11.4496 60.2457 11.3121 60.0518 11.2099C59.8601 11.1076 59.6321 11.0565 59.3679 11.0565H57.9073V13.1531ZM57.9073 10.2862H59.2304C59.452 10.2862 59.6513 10.2436 59.8281 10.1584C60.0071 10.0732 60.1488 9.95384 60.2532 9.80043C60.3597 9.64489 60.413 9.46165 60.413 9.25071C60.413 8.98011 60.3182 8.7532 60.1285 8.56996C59.9389 8.38672 59.6481 8.2951 59.256 8.2951H57.9073V10.2862ZM65.8414 11.9641V9.09091H66.8002V14H65.8606V13.1499H65.8095C65.6965 13.4119 65.5154 13.6303 65.2661 13.805C65.019 13.9776 64.7111 14.0639 64.3425 14.0639C64.0271 14.0639 63.748 13.9947 63.5051 13.8562C63.2644 13.7156 63.0747 13.5078 62.9362 13.233C62.7999 12.9581 62.7317 12.6183 62.7317 12.2134V9.09091H63.6873V12.0984C63.6873 12.4329 63.78 12.6992 63.9654 12.8974C64.1507 13.0955 64.3915 13.1946 64.6877 13.1946C64.8666 13.1946 65.0445 13.1499 65.2214 13.0604C65.4004 12.9709 65.5484 12.8356 65.6656 12.6545C65.785 12.4734 65.8435 12.2433 65.8414 11.9641ZM68.0842 14V9.09091H69.0398V14H68.0842ZM68.5668 8.33345C68.4006 8.33345 68.2579 8.27805 68.1386 8.16726C68.0214 8.05433 67.9628 7.9201 67.9628 7.76456C67.9628 7.60689 68.0214 7.47266 68.1386 7.36186C68.2579 7.24893 68.4006 7.19247 68.5668 7.19247C68.733 7.19247 68.8747 7.24893 68.9919 7.36186C69.1112 7.47266 69.1709 7.60689 69.1709 7.76456C69.1709 7.9201 69.1112 8.05433 68.9919 8.16726C68.8747 8.27805 68.733 8.33345 68.5668 8.33345ZM71.281 7.45455V14H70.3254V7.45455H71.281ZM74.8582 9.09091V9.85795H72.1767V9.09091H74.8582ZM72.8958 7.91477H73.8514V12.5586C73.8514 12.744 73.8791 12.8835 73.9345 12.9773C73.9899 13.0689 74.0613 13.1317 74.1487 13.1658C74.2382 13.1978 74.3351 13.2138 74.4395 13.2138C74.5162 13.2138 74.5833 13.2085 74.6409 13.1978C74.6984 13.1871 74.7431 13.1786 74.7751 13.1722L74.9477 13.9616C74.8923 13.983 74.8135 14.0043 74.7112 14.0256C74.6089 14.049 74.4811 14.0618 74.3277 14.0639C74.0762 14.0682 73.8419 14.0234 73.6245 13.9297C73.4072 13.8359 73.2314 13.6911 73.0972 13.495C72.963 13.299 72.8958 13.0529 72.8958 12.7567V7.91477ZM79.3614 14L77.9168 9.09091H78.9044L79.8664 12.696H79.9143L80.8795 9.09091H81.8671L82.8259 12.68H82.8738L83.8294 9.09091H84.817L83.3756 14H82.4008L81.4037 10.4556H81.3301L80.333 14H79.3614ZM85.7239 14V9.09091H86.6795V14H85.7239ZM86.2065 8.33345C86.0403 8.33345 85.8975 8.27805 85.7782 8.16726C85.661 8.05433 85.6024 7.9201 85.6024 7.76456C85.6024 7.60689 85.661 7.47266 85.7782 7.36186C85.8975 7.24893 86.0403 7.19247 86.2065 7.19247C86.3727 7.19247 86.5144 7.24893 86.6315 7.36186C86.7509 7.47266 86.8105 7.60689 86.8105 7.76456C86.8105 7.9201 86.7509 8.05433 86.6315 8.16726C86.5144 8.27805 86.3727 8.33345 86.2065 8.33345ZM90.2566 9.09091V9.85795H87.5752V9.09091H90.2566ZM88.2943 7.91477H89.2499V12.5586C89.2499 12.744 89.2776 12.8835 89.333 12.9773C89.3884 13.0689 89.4598 13.1317 89.5471 13.1658C89.6366 13.1978 89.7336 13.2138 89.838 13.2138C89.9147 13.2138 89.9818 13.2085 90.0393 13.1978C90.0968 13.1871 90.1416 13.1786 90.1735 13.1722L90.3461 13.9616C90.2907 13.983 90.2119 14.0043 90.1096 14.0256C90.0073 14.049 89.8795 14.0618 89.7261 14.0639C89.4747 14.0682 89.2403 14.0234 89.023 13.9297C88.8056 13.8359 88.6299 13.6911 88.4956 13.495C88.3614 13.299 88.2943 13.0529 88.2943 12.7567V7.91477ZM92.3748 11.0852V14H91.4192V7.45455H92.362V9.88991H92.4227C92.5378 9.62571 92.7136 9.41584 92.9501 9.2603C93.1866 9.10476 93.4955 9.02699 93.8769 9.02699C94.2136 9.02699 94.5076 9.09624 94.759 9.23473C95.0126 9.37322 95.2086 9.5799 95.3471 9.85476C95.4877 10.1275 95.558 10.4684 95.558 10.8775V14H94.6024V10.9925C94.6024 10.6325 94.5097 10.3533 94.3244 10.1552C94.139 9.9549 93.8812 9.85476 93.5509 9.85476C93.3251 9.85476 93.1227 9.9027 92.9437 9.99858C92.7668 10.0945 92.6273 10.2351 92.525 10.4205C92.4249 10.6037 92.3748 10.8253 92.3748 11.0852Z" fill="#0E1117"></path></svg></span>
              </a>
            </div>
          </div>
        </div>
      </footer>
    </div>
    <script>
      const sidenav = document.getElementById('sidenav');
      if (sidenav) {
        const activeEntries = sidenav.querySelectorAll('.nav-link.active');
        if (activeEntries.length > 0) {
          const activeEntry = activeEntries[activeEntries.length - 1];
      
          sidenav.scrollTo({
            top: activeEntry.offsetTop - window.innerHeight / 3,
          });
        }
      }
            
    </script>
  </body>
</html>
