CINXE.COM
dart_style | Dart package
<!DOCTYPE html> <html lang="en-us"><head><script src="https://www.googletagmanager.com/gtm.js?id=GTM-MX6DBN9" async="async"></script><script src="/static/hash-8pjab7lp/js/gtm.js" async="async"></script><meta charset="utf-8"/><meta http-equiv="x-ua-compatible" content="ie=edge"/><meta name="viewport" content="width=device-width, initial-scale=1"/><meta name="twitter:card" content="summary"/><meta name="twitter:site" content="@dart_lang"/><meta name="twitter:description" content="Opinionated, automatic Dart source code formatter. Provides an API and a CLI tool."/><meta name="twitter:image" content="https://pub.dev/static/hash-8pjab7lp/img/pub-dev-icon-cover-image.png"/><meta property="og:type" content="website"/><meta property="og:site_name" content="Dart packages"/><meta property="og:title" content="dart_style | Dart package"/><meta property="og:description" content="Opinionated, automatic Dart source code formatter. Provides an API and a CLI tool."/><meta property="og:image" content="https://pub.dev/static/hash-8pjab7lp/img/pub-dev-icon-cover-image.png"/><meta property="og:url" content="https://pub.dev/packages/dart_style"/><title>dart_style | Dart package</title><link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Google+Sans:wght@400;500;700&family=Google+Sans+Display:wght@400&family=Google+Sans+Text:wght@400;500;700&family=Google+Sans+Mono:wght@400;700&display=swap"/><link rel="shortcut icon" href="/favicon.ico?hash=nk4nss8c7444fg0chird9erqef2vkhb8"/><link rel="stylesheet" href="https://www.gstatic.com/glue/v25_0/ccb.min.css"/><link rel="search" type="application/opensearchdescription+xml" title="Dart packages" href="/osd.xml"/><link rel="canonical" href="https://pub.dev/packages/dart_style"/><meta name="description" content="Opinionated, automatic Dart source code formatter. Provides an API and a CLI tool."/><link rel="alternate" type="application/atom+xml" title="Updated Packages Feed for Pub" href="/feed.atom"/><link rel="stylesheet" type="text/css" href="/static/hash-8pjab7lp/material/bundle/styles.css"/><link rel="stylesheet" type="text/css" href="/static/hash-8pjab7lp/css/style.css"/><script src="/static/hash-8pjab7lp/material/bundle/script.min.js" defer="defer"></script><script src="/static/hash-8pjab7lp/js/script.dart.js" defer="defer"></script><script src="https://www.gstatic.com/brandstudio/kato/cookie_choice_component/cookie_consent_bar.v3.js" defer="defer" data-autoload-cookie-consent-bar="true"></script><meta name="pub-page-data" content="eyJwa2dEYXRhIjp7InBhY2thZ2UiOiJkYXJ0X3N0eWxlIiwidmVyc2lvbiI6IjMuMC4xIiwibGlrZXMiOjEwNSwicHVibGlzaGVySWQiOiJ0b29scy5kYXJ0LmRldiIsImlzRGlzY29udGludWVkIjpmYWxzZSwiaXNMYXRlc3QiOnRydWV9LCJzZXNzaW9uQXdhcmUiOmZhbHNlfQ=="/><link rel="preload" href="/static/hash-8pjab7lp/highlight/highlight-with-init.js" as="script"/></head><body class="light-theme"><script src="/static/hash-8pjab7lp/js/dark-init.js"></script><noscript><iframe src="https://www.googletagmanager.com/ns.html?id=GTM-MX6DBN9" height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript><div class="site-header"><button class="hamburger" aria-label="menu toggle"></button><a class="logo" href="/" aria-label="Go to the landing page of pub.dev"><img class="site-logo" src="/static/hash-8pjab7lp/img/pub-dev-logo.svg" alt="" width="140" height="30" role="presentation"/></a><div class="site-header-space"></div><div class="site-header-mask"></div><div class="site-header-search"><form action="/packages" method="GET"><input class="site-header-search-input" name="q" placeholder="New search..." autocomplete="on" title="Search"/></form></div><nav class="site-header-nav scroll-container"><div class="nav-login-container"><button id="-account-login" class="nav-main-button link">Sign in</button></div><div class="nav-container nav-help-container hoverable"><button class="nav-main-button">Help</button><div class="nav-hover-popup"><div class="nav-table-columns"><div class="nav-table-column"><h3>pub.dev</h3><a class="nav-link" href="/help/search" rel="noopener" target="_blank">Searching for packages</a><a class="nav-link" href="/help/scoring" rel="noopener" target="_blank">Package scoring and pub points</a></div><div class="nav-table-column"><h3>Flutter</h3><a class="nav-link" href="https://flutter.dev/using-packages/" rel="noopener" target="_blank">Using packages</a><a class="nav-link" href="https://flutter.dev/developing-packages/" rel="noopener" target="_blank">Developing packages and plugins</a><a class="nav-link" href="https://dart.dev/tools/pub/publishing" rel="noopener" target="_blank">Publishing a package</a></div><div class="nav-table-column"><h3>Dart</h3><a class="nav-link" href="https://dart.dev/guides/packages" rel="noopener" target="_blank">Using packages</a><a class="nav-link" href="https://dart.dev/tools/pub/publishing" rel="noopener" target="_blank">Publishing a package</a></div></div></div></div><div class="nav-container nav-help-container-mobile foldable"><h3 class="foldable-button">pub.dev <img class="foldable-icon" src="/static/hash-8pjab7lp/img/nav-mobile-foldable-icon.svg" alt="toggle folding of the section" width="13" height="6"/></h3><div class="foldable-content"><a class="nav-link" href="/help/search" rel="noopener" target="_blank">Searching for packages</a><a class="nav-link" href="/help/scoring" rel="noopener" target="_blank">Package scoring and pub points</a></div></div><div class="nav-container nav-help-container-mobile foldable"><h3 class="foldable-button">Flutter <img class="foldable-icon" src="/static/hash-8pjab7lp/img/nav-mobile-foldable-icon.svg" alt="toggle folding of the section" width="13" height="6"/></h3><div class="foldable-content"><a class="nav-link" href="https://flutter.dev/using-packages/" rel="noopener" target="_blank">Using packages</a><a class="nav-link" href="https://flutter.dev/developing-packages/" rel="noopener" target="_blank">Developing packages and plugins</a><a class="nav-link" href="https://dart.dev/tools/pub/publishing" rel="noopener" target="_blank">Publishing a package</a></div></div><div class="nav-container nav-help-container-mobile foldable"><h3 class="foldable-button">Dart <img class="foldable-icon" src="/static/hash-8pjab7lp/img/nav-mobile-foldable-icon.svg" alt="toggle folding of the section" width="13" height="6"/></h3><div class="foldable-content"><a class="nav-link" href="https://dart.dev/guides/packages" rel="noopener" target="_blank">Using packages</a><a class="nav-link" href="https://dart.dev/tools/pub/publishing" rel="noopener" target="_blank">Publishing a package</a></div></div></nav><button class="-pub-theme-toggle" aria-label="light/dark theme toggle"></button></div><div id="banner-container"></div><main class="container"><div class="detail-wrapper -active -has-info-box"><div class="detail-header -is-loose"><div class="detail-container"><div class="detail-header-outer-block"><div class="detail-header-content-block"><h1 class="title">dart_style 3.0.1 <span class="pkg-page-title-copy"><img class="pub-monochrome-icon pkg-page-title-copy-icon filter-invert-on-dark" src="/static/hash-8pjab7lp/img/content-copy-icon.svg" alt="copy "dart_style: ^3.0.1" to clipboard" width="18" height="18" title="Copy "dart_style: ^3.0.1" to clipboard" data-copy-content="dart_style: ^3.0.1" data-ga-click-event="copy-package-version"/><div class="pkg-page-title-copy-feedback"><span class="code">dart_style: ^3.0.1</span> copied to clipboard</div></span></h1><div class="metadata">Published <span><a class="-x-ago" href="" title="Dec 20, 2024" role="button" data-timestamp="1734730566773">59 days ago</a></span> • <a class="-pub-publisher" href="/publishers/tools.dart.dev"><img class="-pub-publisher-shield filter-invert-on-dark" src="/static/hash-8pjab7lp/img/material-icon-verified.svg" alt="verified publisher" width="14" height="14" title="Published by a pub.dev verified publisher"/>tools.dart.dev</a><span class="package-badge" title="Package is compatible with Dart 3.">Dart 3 compatible</span></div><div class="detail-tags-and-like"><div class="detail-tags"><div class="-pub-tag-badge"><span class="tag-badge-main">SDK</span><a class="tag-badge-sub" href="/packages?q=sdk%3Adart" rel="nofollow" title="Packages compatible with Dart SDK">Dart</a><a class="tag-badge-sub" href="/packages?q=sdk%3Aflutter" rel="nofollow" title="Packages compatible with Flutter SDK">Flutter</a></div><div class="-pub-tag-badge"><span class="tag-badge-main">Platform</span><a class="tag-badge-sub" href="/packages?q=platform%3Aandroid" rel="nofollow" title="Packages compatible with Android platform">Android</a><a class="tag-badge-sub" href="/packages?q=platform%3Aios" rel="nofollow" title="Packages compatible with iOS platform">iOS</a><a class="tag-badge-sub" href="/packages?q=platform%3Alinux" rel="nofollow" title="Packages compatible with Linux platform">Linux</a><a class="tag-badge-sub" href="/packages?q=platform%3Amacos" rel="nofollow" title="Packages compatible with macOS platform">macOS</a><a class="tag-badge-sub" href="/packages?q=platform%3Awindows" rel="nofollow" title="Packages compatible with Windows platform">Windows</a></div></div><div class="detail-like"><button id="-pub-like-icon-button" class="mdc-icon-button" data-ga-click-event="toggle-like" aria-pressed="false" title="Like this package"><img class="mdc-icon-button__icon" src="/static/hash-8pjab7lp/img/like-inactive.svg" alt="liked status: inactive" width="18" height="18"/><img class="mdc-icon-button__icon mdc-icon-button__icon--on" src="/static/hash-8pjab7lp/img/like-active.svg" alt="liked status: active" width="18" height="18"/></button><span class="likes-count"><span id="likes-count">105</span></span></div></div></div></div></div></div><div class="detail-container"><div class="detail-lead"><div class="detail-metadata-toggle"><div class="detail-metadata-toggle-icon">→</div><h3 class="detail-lead-title">Metadata</h3></div><p class="detail-lead-text">Opinionated, automatic Dart source code formatter. Provides an API and a CLI tool.</p><p class="detail-lead-more"><a class="detail-metadata-toggle">More...</a></p></div></div><div class="detail-body"><div class="detail-tabs"><div class="detail-tabs-wide-header"><div class="detail-container"><ul class="detail-tabs-header"><li class="detail-tab tab-button detail-tab-readme-title -active">Readme</li><li class="detail-tab tab-link detail-tab-changelog-title"><a href="/packages/dart_style/changelog" role="button">Changelog</a></li><li class="detail-tab tab-link detail-tab-installing-title"><a href="/packages/dart_style/install" role="button">Installing</a></li><li class="detail-tab tab-link detail-tab-versions-title"><a href="/packages/dart_style/versions" role="button">Versions</a></li><li class="detail-tab tab-link detail-tab-analysis-title"><a href="/packages/dart_style/score" role="button">Scores</a></li></ul></div></div><div class="detail-container detail-body-main"><div class="detail-tabs-content"><section class="tab-content detail-tab-readme-content -active markdown-body"><p>The dart_style package defines an opinionated automated formatter for Dart code. It replaces the whitespace in your program with what it deems to be the best formatting for it. It also makes minor changes around non-semantic punctuation like trailing commas and brackets in parameter lists.</p> <p>The resulting code should follow the <a href="https://dart.dev/guides/language/effective-dart/style">Dart style guide</a> and look nice to most human readers, most of the time.</p> <p>The formatter handles indentation, inline whitespace, and (by far the most difficult) intelligent line wrapping. It has no problems with nested collections, function expressions, long argument lists, or otherwise tricky code.</p> <p>The formatter turns code like this:</p> <pre><code class="language-dart">// BEFORE formatting process = await Process.start(path.join(p.pubCacheBinPath,Platform.isWindows ?'${command.first}.bat':command.first,),[...command.sublist(1),'web:0', // Allow for binding to a random available port. ],workingDirectory:workingDir,environment:{'PUB_CACHE':p.pubCachePath,'PATH': path.dirname(Platform.resolvedExecutable)+(Platform.isWindows?';':':')+ Platform.environment['PATH']!,},); </code></pre> <p>into:</p> <pre><code class="language-dart">// AFTER formatting process = await Process.start( path.join( p.pubCacheBinPath, Platform.isWindows ? '${command.first}.bat' : command.first, ), [ ...command.sublist(1), 'web:0', // Allow for binding to a random available port. ], workingDirectory: workingDir, environment: { 'PUB_CACHE': p.pubCachePath, 'PATH': path.dirname(Platform.resolvedExecutable) + (Platform.isWindows ? ';' : ':') + Platform.environment['PATH']!, }, ); </code></pre> <p>The formatter will never break your code—you can safely invoke it automatically from build and presubmit scripts.</p> <h2 class="hash-header" id="formatting-files">Formatting files <a href="#formatting-files" class="hash-link">#</a></h2> <p>The formatter is part of the unified <a href="https://dart.dev/tools/dart-tool"><code>dart</code></a> developer tool included in the Dart SDK, so most users run it directly from there using <code>dart format</code>.</p> <p>IDEs and editors that support Dart usually provide easy ways to run the formatter. For example, in Visual Studio Code, formatting Dart code will use the dart_style formatter by default. Most users have it set to reformat every time they save a file.</p> <p>Here's a simple example of using the formatter on the command line:</p> <pre><code class="language-sh">$ dart format my_file.dart </code></pre> <p>This command formats the <code>my_file.dart</code> file and writes the result back to the same file.</p> <p>The <code>dart format</code> command takes a list of paths, which can point to directories or files. If the path is a directory, it processes every <code>.dart</code> file in that directory and all of its subdirectories.</p> <p>By default, <code>dart format</code> formats each file and writes the result back to the same files. If you pass <code>--output show</code>, it prints the formatted code to stdout and doesn't modify the files.</p> <h2 class="hash-header" id="validating-formatting">Validating formatting <a href="#validating-formatting" class="hash-link">#</a></h2> <p>If you want to use the formatter in something like a <a href="https://www.chromium.org/developers/how-tos/depottools/presubmit-scripts" rel="ugc">presubmit script</a> or <a href="https://git-scm.com/book/en/v2/Customizing-Git-Git-Hooks" rel="ugc">commit hook</a>, you can pass flags to omit writing formatting changes to disk and to update the exit code to indicate success/failure:</p> <pre><code class="language-sh">$ dart format --output=none --set-exit-if-changed . </code></pre> <h2 class="hash-header" id="using-the-formatter-as-a-library">Using the formatter as a library <a href="#using-the-formatter-as-a-library" class="hash-link">#</a></h2> <p>The `dart_style package exposes a simple <a href="https://pub.dev/documentation/dart_style/latest/">library API</a> for formatting code. Basic usage looks like this:</p> <pre><code class="language-dart">import 'package:dart_style/dart_style.dart'; main() { final formatter = DartFormatter(); try { print(formatter.format(""" library an_entire_compilation_unit; class SomeClass {} """)); print(formatter.formatStatement("aSingle(statement);")); } on FormatterException catch (ex) { print(ex); } } </code></pre> <h2 class="hash-header" id="other-resources">Other resources <a href="#other-resources" class="hash-link">#</a></h2> <ul> <li> <p>Before sending an email, see if you are asking a <a href="https://github.com/dart-lang/dart_style/wiki/FAQ" rel="ugc">frequently asked question</a>.</p> </li> <li> <p>Before filing a bug, or if you want to understand how work on the formatter is managed, see how we <a href="https://github.com/dart-lang/dart_style/wiki/Tracking-issues" rel="ugc">track issues</a>.</p> </li> </ul> </section></div></div></div><aside class="detail-info-box"><a class="packages-scores" href="/packages/dart_style/score"><div class="packages-score packages-score-like"><div class="packages-score-value -has-value"><span class="packages-score-value-number">105</span><span class="packages-score-value-sign"></span></div><div class="packages-score-label">likes</div></div><div class="packages-score packages-score-health"><div class="packages-score-value -has-value"><span class="packages-score-value-number">140</span><span class="packages-score-value-sign"></span></div><div class="packages-score-label">points</div></div><div class="packages-score packages-score-downloads" title="Number of downloads of this package during the past 30 days"><div class="packages-score-value -has-value"><span class="packages-score-value-number">5.48M</span><span class="packages-score-value-sign"></span></div><div class="packages-score-label">downloads</div></div></a><h3 class="title">Publisher</h3><p><a href="/publishers/tools.dart.dev"><img class="-pub-publisher-shield filter-invert-on-dark" src="/static/hash-8pjab7lp/img/material-icon-verified.svg" alt="verified publisher" width="14" height="14" title="Published by a pub.dev verified publisher"/>tools.dart.dev</a></p><h3 class="title">Weekly Downloads</h3><div id="-weekly-downloads-sparkline" class="weekly-downloads-sparkline" data-widget="weekly-sparkline" data-weekly-sparkline-points="gCqxZ9/vEwCPHRQAbz4VAKJfEgBJrhEAalwQADsfCABfvQkABpcRAGsyFAAP9hEAMu0QADLBEQB5AhEAwcYQAPB0FwDGJhsAjvcVAL5zFQDcZhQAuHAWAEe7EgBqtRYAMSQTAKIVFAA6rRUAEC0QAL4dEwDdQxMALX0SAManEQDMExQAedcSAFGRFwCsZhMAkDwTAFJuEwA3wxAAySgRACJCEQDMIRAAAq0OAKvgEwARexMAdUsRAIYiEgAb7BAA9IgSAHo9EgAESBQAbEMSAOVIEgA="></div><h3 class="title pkg-infobox-metadata">Metadata</h3><p>Opinionated, automatic Dart source code formatter. Provides an API and a CLI tool.</p><p><a class="link" href="https://github.com/dart-lang/dart_style" rel="ugc">Repository (GitHub)</a><br/></p><h3 class="title">Documentation</h3><p><a class="link" href="/documentation/dart_style/latest/">API reference</a><br/></p><h3 class="title">License</h3><p><img class="inline-icon-img filter-invert-on-dark" src="/static/hash-8pjab7lp/img/material-icon-balance.svg" alt="" width="14" height="14" role="presentation"/>BSD-3-Clause (<a href="/packages/dart_style/license">license</a>)</p><h3 class="title">Dependencies</h3><p><a href="/packages/analyzer" title=">=6.5.0 <8.0.0">analyzer</a>, <a href="/packages/args" title=">=1.0.0 <3.0.0">args</a>, <a href="/packages/collection" title="^1.17.0">collection</a>, <a href="/packages/package_config" title="^2.1.0">package_config</a>, <a href="/packages/path" title="^1.0.0">path</a>, <a href="/packages/pub_semver" title=">=1.4.4 <3.0.0">pub_semver</a>, <a href="/packages/source_span" title="^1.4.0">source_span</a>, <a href="/packages/yaml" title="^3.1.2">yaml</a></p><h3 class="title">More</h3><p><a href="/packages?q=dependency%3Adart_style" rel="nofollow">Packages that depend on dart_style</a></p></aside></div><script type="application/ld+json">{"@context":"http\u003a\u002f\u002fschema.org","@type":"SoftwareSourceCode","name":"dart\u005fstyle","version":"3.0.1","description":"dart\u005fstyle - Opinionated, automatic Dart source code formatter. Provides an API and a CLI tool.","url":"https\u003a\u002f\u002fpub.dev\u002fpackages\u002fdart\u005fstyle","dateCreated":"2015-01-08T17\u003a27\u003a59.163Z","dateModified":"2024-12-20T21\u003a36\u003a06.773444Z","programmingLanguage":"Dart","image":"https\u003a\u002f\u002fpub.dev\u002fstatic\u002fimg\u002fpub-dev-icon-cover-image.png","license":"https\u003a\u002f\u002fpub.dev\u002fpackages\u002fdart\u005fstyle\u002flicense"}</script></div><div class="detail-metadata"><h3 class="detail-metadata-title"><span class="detail-metadata-toggle">←</span> Metadata</h3><div class="detail-info-box"><a class="packages-scores" href="/packages/dart_style/score"><div class="packages-score packages-score-like"><div class="packages-score-value -has-value"><span class="packages-score-value-number">105</span><span class="packages-score-value-sign"></span></div><div class="packages-score-label">likes</div></div><div class="packages-score packages-score-health"><div class="packages-score-value -has-value"><span class="packages-score-value-number">140</span><span class="packages-score-value-sign"></span></div><div class="packages-score-label">points</div></div><div class="packages-score packages-score-downloads" title="Number of downloads of this package during the past 30 days"><div class="packages-score-value -has-value"><span class="packages-score-value-number">5.48M</span><span class="packages-score-value-sign"></span></div><div class="packages-score-label">downloads</div></div></a><h3 class="title">Publisher</h3><p><a href="/publishers/tools.dart.dev"><img class="-pub-publisher-shield filter-invert-on-dark" src="/static/hash-8pjab7lp/img/material-icon-verified.svg" alt="verified publisher" width="14" height="14" title="Published by a pub.dev verified publisher"/>tools.dart.dev</a></p><h3 class="title">Weekly Downloads</h3><div id="-weekly-downloads-sparkline" class="weekly-downloads-sparkline" data-widget="weekly-sparkline" data-weekly-sparkline-points="gCqxZ9/vEwCPHRQAbz4VAKJfEgBJrhEAalwQADsfCABfvQkABpcRAGsyFAAP9hEAMu0QADLBEQB5AhEAwcYQAPB0FwDGJhsAjvcVAL5zFQDcZhQAuHAWAEe7EgBqtRYAMSQTAKIVFAA6rRUAEC0QAL4dEwDdQxMALX0SAManEQDMExQAedcSAFGRFwCsZhMAkDwTAFJuEwA3wxAAySgRACJCEQDMIRAAAq0OAKvgEwARexMAdUsRAIYiEgAb7BAA9IgSAHo9EgAESBQAbEMSAOVIEgA="></div><h3 class="title pkg-infobox-metadata">Metadata</h3><p>Opinionated, automatic Dart source code formatter. Provides an API and a CLI tool.</p><p><a class="link" href="https://github.com/dart-lang/dart_style" rel="ugc">Repository (GitHub)</a><br/></p><h3 class="title">Documentation</h3><p><a class="link" href="/documentation/dart_style/latest/">API reference</a><br/></p><h3 class="title">License</h3><p><img class="inline-icon-img filter-invert-on-dark" src="/static/hash-8pjab7lp/img/material-icon-balance.svg" alt="" width="14" height="14" role="presentation"/>BSD-3-Clause (<a href="/packages/dart_style/license">license</a>)</p><h3 class="title">Dependencies</h3><p><a href="/packages/analyzer" title=">=6.5.0 <8.0.0">analyzer</a>, <a href="/packages/args" title=">=1.0.0 <3.0.0">args</a>, <a href="/packages/collection" title="^1.17.0">collection</a>, <a href="/packages/package_config" title="^2.1.0">package_config</a>, <a href="/packages/path" title="^1.0.0">path</a>, <a href="/packages/pub_semver" title=">=1.4.4 <3.0.0">pub_semver</a>, <a href="/packages/source_span" title="^1.4.0">source_span</a>, <a href="/packages/yaml" title="^3.1.2">yaml</a></p><h3 class="title">More</h3><p><a href="/packages?q=dependency%3Adart_style" rel="nofollow">Packages that depend on dart_style</a></p></div><p class="detail-lead-back"><a class="detail-metadata-toggle">Back</a></p></div><div id="-screenshot-carousel" class="carousel"><fab id="-carousel-prev" class="mdc-fab carousel-prev carousel-nav" data-mdc-auto-init="MDCRipple" title="Previous" data-ga-click-event="screenshot-carousel-prev-click" tabindex="0"><div class="mdc-fab__ripple"></div><img class="mdc-fab__icon" src="/static/hash-8pjab7lp/img/keyboard_arrow_left.svg" alt="previous" width="24" height="24" aria-hidden="true"/></fab><div id="-image-container" class="image-container"></div><fab id="-carousel-next" class="mdc-fab carousel-next carousel-nav" data-mdc-auto-init="MDCRipple" title="Next" data-ga-click-event="screenshot-carousel-next-click" tabindex="0"><div class="mdc-fab__ripple"></div><img class="mdc-fab__icon" src="/static/hash-8pjab7lp/img/keyboard_arrow_right.svg" alt="next" width="24" height="24" aria-hidden="true"/></fab><p id="-screenshot-description" class="screenshot-description"></p></div></main><footer class="site-footer"><a class="link" href="https://dart.dev/">Dart language</a><a class="link sep" href="/report?subject=package%3Adart_style&url=https%3A%2F%2Fpub.dev%2Fpackages%2Fdart_style">Report package</a><a class="link sep" href="/policy">Policy</a><a class="link sep" href="https://www.google.com/intl/en/policies/terms/">Terms</a><a class="link sep" href="https://developers.google.com/terms/">API Terms</a><a class="link sep" href="/security">Security</a><a class="link sep" href="https://www.google.com/intl/en/policies/privacy/">Privacy</a><a class="link sep" href="/help">Help</a><a class="link icon sep" href="/feed.atom"><img class="inline-icon" src="/static/hash-8pjab7lp/img/rss-feed-icon.svg" alt="RSS" width="20" height="20" title="RSS/atom feed"/></a><a class="link icon github_issue" href="https://github.com/dart-lang/pub-dev/issues/new"><img class="inline-icon" src="/static/hash-8pjab7lp/img/bug-report-white-96px.png" alt="bug report" width="20" height="20" title="Report an issue with this site"/></a></footer><script src="/static/hash-8pjab7lp/highlight/highlight-with-init.js" defer="defer"></script></body></html>