dart-frog-dev/dart_frog
59.0
Adequate · 23 September 2026
10.5k
lines of production code
Dart
with TypeScript
5
measurements over time
What this system is
Dart Frog is a modern, high-performance web framework for Dart that simplifies building scalable HTTP and WebSocket servers. It provides a comprehensive tooling ecosystem, including a CLI for project scaffolding and a VS Code extension for integrated development, alongside robust code generation and validation to prevent configuration errors. The framework supports advanced features like middleware, authentication, and static file serving, all managed through a consistent, testable architecture.
How it got here
2022 — CLI and ecosystem expansion
51 changes.
This period focused on maturing the Dart Frog framework by introducing a comprehensive CLI for project scaffolding, development, and production builds. The work expanded the public API to support form data, WebSockets, and route configuration validation, while adding extensive test coverage and example applications to demonstrate new capabilities.
2023–2025 — CLI, daemon, and IDE integration
37 changes.
This period focused on expanding the Dart Frog ecosystem with a new CLI 'new' command, a background daemon for managing development servers, and a VS Code extension for integrated development. The work also introduced authentication middleware, linting rules, and comprehensive test coverage for these new features.
Features
Add CLI entry point for Dart Frog
A new entry point for the Dart Frog CLI has been added at packages/dart\_frog\_cli/bin/dart\_frog.dart. This file serves as the executable interface for the command-line tool, initializing the command runner and managing standard output and error streams.
_packages/dart\_frog\cli/bin · high confidence
Add Dart Frog CLI brick templates for routes and middleware
The Dart Frog CLI now includes a new brick that generates scaffold templates for routes and middleware. The route template provides a basic handler structure with optional path parameters, while the middleware template offers a placeholder for implementing request/response processing. These templates are intended to be used with the dart\_frog\_new command to quickly set up new route or middleware files.
_bricks/dart\_frog\new/\\brick\\_ · high confidence_
Add Dart Frog code generation example
A new example file (main.dart) has been added to the dart\_frog\_gen package, demonstrating how to use the buildRouteConfiguration function to generate route configurations from the current directory.
_packages/dart\_frog\gen/example · high confidence
Add Dart Frog hello world route example
A new example demonstrating a basic Dart Frog route has been added. The example includes a route handler that returns a simple 'Welcome to Dart Frog!' response, providing a starting point for understanding route configuration in the framework.
_examples/hello\world/routes · high confidence
Add Dockerfile for Dart Frog production server
A new Dockerfile has been added to the Dart Frog production server brick, enabling containerized builds. The file defines a multi-stage build process that copies external dependencies and path dependencies, resolves packages, compiles the server to an executable, and finally copies the compiled binary and runtime files into a minimal scratch image for deployment.
_bricks/dart\_frog\_prod\server/\\brick\\/build/{{\#addDockerfile}}Dockerfile{{ · high confidence
Add Run and Debug CodeLens for route handlers
The VS Code extension now provides 'Run' and 'Debug' CodeLens options on route handler functions in Dart Frog projects. Users can now start or debug the development server directly from the editor by clicking the new CodeLens links, which are automatically detected on files within the 'routes' directory.
extensions/vscode/src/code-lens · high confidence
Add \`dart\_frog build\` command for production builds
Users can now run \dart\_frog build\ to create a production build of their application. The command supports a \--dart-version\ flag to specify the Dart SDK version for the generated Dockerfile, defaulting to 'stable'.
_packages/dart\_frog\cli/lib/src/commands/build · high confidence
Add \`dart\_frog create\` command for scaffolding new projects
The CLI now includes a \create\ command that scaffolds a new Dart Frog application. Users can generate a new project by running \dart\_frog create\ in their desired output directory, optionally specifying a project name via the \--project-name\ flag. The command validates that the project name is a valid Dart package name and uses a bundled template to generate the initial project structure.
_packages/dart\_frog\cli/lib/src/commands/create · high confidence
Add \`dart\_frog daemon\` command to start the Dart Frog daemon
Users can now run \dart\_frog daemon\ to start the Dart Frog daemon process. This new command provides a dedicated entry point for managing the background daemon, exposing the \DaemonCommand\ class which handles the daemon's lifecycle and exit code.
_packages/dart\_frog\cli/lib/src/commands/daemon · high confidence
Add \`dart\_frog new\` command to scaffold routes and middleware
The \dart\_frog new\ command has been added to the CLI, allowing users to generate new routes and middleware. This new command accepts a route path and validates the input, ensuring that route segments are valid Dart identifiers and do not contain empty segments. It also verifies that the project contains a 'routes' directory before proceeding with generation.
_packages/dart\_frog\cli/lib/src/commands/new · high confidence
Add bearer authentication example
Added a new example demonstrating bearer authentication with Dart Frog. The example includes a session repository for managing user sessions, a user repository for handling user data, and a hash extension for password hashing. It also includes configuration files (.gitignore, analysis\_options.yaml, pubspec\_overrides.yaml) to support the example's dependencies and linting.
_examples/bearer\authentication · high confidence
Add counter example with route middleware
A new counter example is introduced in the examples/counter/routes directory. The example demonstrates a middleware that maintains a global request count and provides it via the context, which is then read in the index route to display how many times the route has been accessed.
examples/counter/routes · high confidence
Add default index route template for Dart Frog projects
The Dart Frog create brick now includes a new \index.dart\ template file in the routes directory. This file defines the default welcome response for the application's root path, returning a simple 'Welcome to Dart Frog!' message. This change updates the generated project structure to include a functional default route.
_bricks/create\_dart\frog/\\brick\\/routes · high confidence
Add echo route example
A new example route was added to the echo application, demonstrating how to return a request parameter as the response body using Dart Frog.
examples/echo/routes · high confidence
Add in-memory todos data source implementation
The todos example now includes an in-memory implementation of the TodosDataSource interface, allowing users to interact with a local, non-persistent store for testing and demonstration purposes. This new package provides a simple cache of todos in memory, supporting create, read, update, and delete operations without external dependencies.
_examples/todos/packages/in\_memory\_todos\_data\source/lib · high confidence
Add kitchen sink example with routes and middleware
The kitchen sink example now includes a full set of route handlers and middleware files, demonstrating request handling patterns such as form data processing, header validation, and method restrictions. This provides a comprehensive reference for building and testing Dart Frog applications with various route configurations.
_examples/kitchen\sink/routes · high confidence
Add status bar controls for Dart Frog server management
The VS Code extension now displays status bar items for Dart Frog projects, allowing users to start and stop the development server directly from the editor. Additionally, a status bar item shows the application's host and port, enabling users to open the running application in a browser with a single click.
extensions/vscode/src/status-bar · high confidence
Add todos example with in-memory data source
A new todos example is added to the repository, demonstrating a Dart Frog application with an in-memory data source. The example includes a middleware that registers the data source and a logger, alongside route handlers for creating, reading, updating, and deleting todos via JSON responses.
examples/todos/routes · high confidence
Add uninstall command to Dart Frog CLI
Users can now run \dart\_frog uninstall\ to receive instructions and a link to the official documentation for uninstalling the Dart Frog CLI tool.
_packages/dart\_frog\cli/lib/src/commands/uninstall · high confidence
Add user management routes for basic authentication example
The basic authentication example now includes full CRUD routes for managing users. A new middleware enforces basic authentication on all user-related endpoints, verifying credentials against a UserRepository. The /users route handles POST requests to create new users, while the /users/\[id\] route supports GET, PATCH, and DELETE operations to retrieve, update, or delete specific users, with access control ensuring users can only modify their own records.
_examples/basic\authentication/routes · high confidence
Add web\_socket\_counter example using Dart Frog
The web\_socket\_counter example was added, demonstrating a counter application built with Dart Frog using WebSockets. The implementation includes a CounterCubit for state management, a counterProvider middleware, and a WebSocket route that handles increment and decrement messages. The example also includes a .gitignore file, a README with badges, an analysis\_options.yaml file that includes dart\_frog\_lint, and a pubspec\_overrides.yaml for local package paths.
_examples/web\_socket\counter · high confidence
Added Dart Frog example application
A new example application has been added to the Dart Frog package, providing a minimal 'Hello World' style server entry point that returns a welcome message, serving as a starting point for new users.
_packages/dart\frog/example · high confidence
Added basic authentication example
Introduced a new example demonstrating how to implement basic authentication with Dart Frog. The example includes a user repository that manages an in-memory database of users, handling creation, deletion, and credential verification using SHA-256 hashing. The project is configured with a \.gitignore\ file, a \README.md\ with lint badges, and \analysis\_options.yaml\ that includes the \dart\_frog\_lint\ package for consistent code analysis.
_examples/basic\_authentication, examples/bearer\authentication/routes · high confidence
Added post-generation hook for Dart Frog project scaffolding
The \bricks/create\_dart\_frog/hooks\ directory now includes a \post\_gen.dart\ script that automatically runs \dart pub get\ in the newly created project directory and prints helpful next-step instructions to the user. This hook is accompanied by a \.gitignore\ file to exclude build artifacts, an \analysis\_options.yaml\ to standardize code analysis, and a \post\_gen\_test.dart\ file containing unit tests for the hook's behavior.
_bricks/create\_dart\frog/hooks · high confidence
Added todos data source package with Todo model and CRUD interface
The todos example now includes a new \todos\_data\_source\ package that provides the core data model and interface for managing todo items. The package exports a \Todo\ class containing title, description, ID, and completion status, along with serialization support. It also defines a \TodosDataSource\ abstract class that specifies Create, Read, Update, and Delete operations for todo items.
_examples/todos/packages/todos\_data\source/lib · high confidence
Added utilities for Dart Frog CLI version management and project resolution
The extension now includes new utility modules for managing Dart Frog CLI versions and resolving project paths. Users will see prompts to install the Dart Frog CLI if it is missing, and the extension can now verify that the installed CLI version is compatible with the extension. Additionally, new functions allow the extension to locate the root of a Dart Frog project from any file path, normalize route paths, and generate unique identifiers for the Dart Frog daemon.
extensions/vscode/src/utils · high confidence
Automated release and bundle generation scripts added
Added shell scripts to the tool directory to automate the release process and bundle generation. The new \release\_ready.sh\ script updates version numbers in \pubspec.yaml\, \brick.yaml\, or \package.json\, regenerates the \CHANGELOG.md\ from git commits, and prepares a release branch. The \generate\_bundles.sh\ script uses \mason\_cli\ to compile Dart Frog bricks into templates for the CLI, ensuring the CLI packages contain the latest brick templates.
tool · high confidence
Define protocol domains for the Dart Frog daemon
The VS Code extension now includes formal type definitions and type guards for the 'daemon' and 'dev-server' domains, enabling the extension to send and receive structured messages such as version requests, kill commands, application start/stop/reload requests, and related events (e.g., application starting, exit, logger, and progress events).
extensions/vscode/src/daemon/protocol · high confidence
Dev server supports custom entrypoints and initialization
The dev server template now allows users to provide a custom entrypoint and custom initialization logic. The generated server code conditionally imports and invokes a user-defined 'main.dart' entrypoint and an optional custom init method, enabling advanced startup configurations and dependency injection patterns that were previously unavailable.
_bricks/dart\_frog\_dev\server/\\brick\\_ · high confidence_
Initial release of the Dart Frog VS Code extension
The Dart Frog VS Code extension is now available, providing an integrated development experience for Dart Frog projects. Upon activation, the extension checks for the Dart Frog CLI, suggesting installation if missing and warning about version compatibility. It registers a suite of commands for creating new routes and middleware, managing the development server (start, stop, debug), and updating the CLI. Additionally, it adds status bar items for server control and application status, and provides CodeLens for running or debugging route handlers directly from the editor.
extensions/vscode, extensions/vscode/src · high confidence
Introduce Dart Frog daemon integration for managing applications
The VS Code extension now includes a new daemon subsystem that manages Dart Frog applications. This adds a singleton DartFrogDaemon class to spawn and communicate with the Dart Frog daemon process, a DartFrogApplication class to track application metadata (project path, ports, host), and a DartFrogApplicationRegistry to track running applications and their events. This enables the extension to start, monitor, and interact with Dart Frog projects via the daemon protocol.
extensions/vscode/src/daemon · high confidence
Introduce DevServerRunner and ProdServerBuilder for server lifecycle management
The CLI now introduces a dedicated DevServerRunner class to manage the local development server process lifecycle, including code generation, file watching, hot reload, and graceful shutdown. A new ProdServerBuilder class handles building the production server runtime code, ensuring Dart version compatibility and generating the necessary files. Additionally, a RestorableDirectoryGeneratorTarget is added to support file snapshotting and rollback capabilities during code generation.
_packages/dart\_frog\_cli/lib/src/dev\_server\runner · high confidence
Introduce RouteConfigurationWatcher for monitoring route changes
Added a new \RouteConfigurationWatcher\ class that monitors a Dart Frog project for changes to its route configuration. This component watches for updates to \main.dart\, \pubspec.yaml\, the \public\ directory, and the \routes\ directory, triggering a regeneration of the route configuration when those files change. This enables the CLI to react to route-related file modifications during development.
_packages/dart\_frog\_cli/lib/src/route\_configuration\watcher · high confidence
Introduce \`dart\_frog dev\` command for local development
Users can now run a local development server using the new \dart\_frog dev\ command. This command starts the dev server and supports customizing the server port (\--port\), the Dart VM service port (\--dart-vm-service-port\), and the hostname (\--hostname\). It also enables hot reload by listening for the 'R' or 'r' key press in the terminal.
_packages/dart\_frog\cli/lib/src/commands/dev · high confidence
Introduce base CLI command structure and runtime compatibility checks
The CLI now uses a shared \DartFrogCommand\ base class that standardizes access to the logger, argument results, and working directory, while the \DartFrogCommandRunner\ registers all available commands (build, create, dev, list, new, daemon, uninstall, update, and completion). Additionally, a new \runtime\_compatibility.dart\ module enforces that the installed \dart\_frog\ package version falls within the supported range (\>=1.0.0 \<2.0.0), throwing a clear error if the project's \pubspec.yaml\ is incompatible.
_packages/dart\_frog\cli/lib/src · high confidence
Introduce dart\_frog\_auth package with Basic, Bearer, and Cookie authentication middleware
The \dart\_frog\_auth\ package is introduced, providing middleware for HTTP authentication in Dart Frog applications. It supports three authentication strategies: Basic (header), Bearer (header), and Cookie-based authentication. Each strategy allows developers to supply a function that validates credentials or tokens and returns a user object, with the option to apply the middleware to specific routes via a predicate function. The package includes a new \Applies\ typedef for route filtering and extends the \RequestContext\ headers with helper methods to parse Authorization and Cookie headers.
_packages/dart\_frog\auth · high confidence
Introduce dart\_frog\_lint package for Dart Frog projects
A new \dart\_frog\_lint\ package has been added to the repository, providing a curated collection of lint rules specifically for Dart Frog applications. Users can now include the package in their projects and enable the recommended set of linter rules via \analysis\_options.yaml\ to enforce consistent code style and catch potential issues early.
_packages/dart\_frog\lint · high confidence
Introduce dart\_frog\_test package for testing Dart Frog services
The \dart\_frog\_test\ package is added to provide utilities for testing Dart Frog applications. It includes a \TestRequestContext\ class to mock request contexts and dependency injection, along with a suite of custom matchers for assertions. These matchers allow users to easily verify HTTP status codes (e.g., \isOk\, \isNotFound\), check response bodies (\expectJsonBody\, \expectBody\), and validate HTTP method restrictions (\expectNotAllowedMethods\). An example application is also included to demonstrate how to use these testing tools.
_packages/dart\_frog\test · high confidence
Introduce dart\_frog\_web\_socket package for WebSocket support
A new \dart\_frog\_web\_socket\ package has been added to the Dart Frog ecosystem, providing a \webSocketHandler\ to manage WebSocket connections within Dart Frog routes. This handler upgrades HTTP requests to WebSocket connections, supporting subprotocol negotiation and configurable origin restrictions. The package includes full test coverage for connection handling, protocol negotiation, and error states, alongside standard project files (README, CHANGELOG, LICENSE, and analysis options).
_packages/dart\_frog\_web\socket · high confidence
Introduce form data parsing and request context improvements
The framework now supports parsing form data (both \application/x-www-form-urlencoded\ and \multipart/form-data\) via the new \FormData\ and \UploadedFile\ classes, accessible through \Request.formData()\ and \Response.formData()\. Additionally, the \RequestContext\ now exposes \mountedParams\ to access URL parameters captured by \Router.mount\, and the \Request\ class exposes \connectionInfo\ for HTTP connection details.
_packages/dart\frog/lib/src · high confidence
Introduce route configuration validation in dart\_frog\_gen
The dart\_frog\_gen package now exposes a new public API for validating route configurations. Users can access the \validateRouteConfiguration\ function to check route setups, ensuring that generated code adheres to expected structural rules before compilation.
_packages/dart\_frog\gen/lib · high confidence
Introduce the Dart Frog Daemon for persistent background processes
The Dart Frog CLI now includes a daemon subsystem that runs as a persistent background process to manage and analyze Dart Frog projects. This change introduces the core infrastructure for the daemon, including a JSON-RPC over stdio connection layer, a server implementation that routes requests to specific domains (such as DevServer and RouteConfiguration), and a logger that emits events instead of printing to the console. This enables long-running tasks to be managed more efficiently by the CLI.
_packages/dart\_frog\cli/lib/src/daemon · high confidence
New \`dart\_frog create\` template bundle
The \dart\_frog create\ command now uses a new bundled template (\create\_dart\_frog\_bundle.dart\) that generates a fresh Dart Frog application. This template includes a \.gitignore\, VS Code extensions, \analysis\_options.yaml\ (using \dart\_frog\_lint\), a \pubspec.yaml\ with Dart 3.11 SDK constraints, and a \routes/index.dart\ file. Crucially, the generated project now includes a \test/routes/index\_test.dart\ file with a test for the default route, and a \post\_gen.dart\ hook that automatically runs \pub get\ and prints helpful startup instructions.
_packages/dart\_frog\cli/lib/src/commands/create/templates · high confidence
New commands for managing Dart Frog development workflows
The VS Code extension now includes commands to create new projects, routes, and middleware, as well as to install, update, and manage the Dart Frog CLI. Users can also start, stop, and debug development servers directly from the command palette, with the extension handling project resolution, CLI installation checks, and progress feedback.
extensions/vscode/src/commands · high confidence
New dart\_frog\_dev\_server brick for the development server
The \dart\_frog\_cli\ package now includes a new \dart\_frog\_dev\_server\ brick (Mason template) that generates the Dart Frog development server. This brick provides the scaffolding for the dev server, including a \pre\_gen\ hook that validates route configurations, detects route conflicts, and reports rogue routes. The generated server supports custom ports, hosts, middleware, and static file serving. The brick also includes a test suite (\pre\_gen\_test.dart\ and \exit\_overrides\_test.dart\) to verify the hook's behavior.
_packages/dart\_frog\cli/lib/src/commands/dev/templates · high confidence
Public API surface expanded with new middleware, handlers, and utilities
The dart\_frog package now exposes a broader public API, including Cascade, Pipeline, Request, RequestContext, Response, Router, and Handler types, along with utility functions like requestLogger, serve, createStaticFileHandler, and hotReload. It also provides fromShelfHandler, fromShelfMiddleware, and body parser types (FormData, UploadedFile) to support middleware, static file serving, and form-data handling.
_packages/dart\frog/lib · medium confidence
Updated Dart Frog CLI templates and hooks
The Dart Frog CLI has been updated with new templates and hooks for generating routes and middleware. The \dart\_frog\_new\_bundles.dart\ file introduces a new \dartFrogNewBundle\ containing the template files for routes and middleware, along with \pre\_gen.dart\ and \post\_gen.dart\ hooks that handle route configuration validation, path normalization, and file creation. The \exit\_overrides.dart\ file provides a mechanism to override the default \exit\ behavior during hook execution, allowing for better error handling and testing. Additionally, the \pubspec.yaml\ for the \dart\_frog\_new\_hooks\ package has been updated, and new tests have been added to cover the \pre\_gen\ and \post\_gen\ hooks, as well as the \exit\_overrides\ functionality. This change ensures that the CLI can generate new Dart Frog projects with the correct structure and configuration.
_packages/dart\_frog\cli/lib/src/commands/new/templates · high confidence
Behavioural changes
Add verify-only flag to the update command
The \dart\_frog update\ command now supports a \--verify-only\ flag. When this flag is provided, the CLI checks for available updates and displays the latest version number without performing the actual update. This allows users to verify if an update is available before committing to the installation process.
_packages/dart\_frog\cli/lib/src/commands/update · high confidence
Added route configuration validation for rogue and conflicting routes
The code generation process now includes validation that detects and reports rogue routes (files that do not match their expected path structure) and route conflicts (overlapping or ambiguous dynamic/static route definitions). This helps developers identify configuration errors early in the development cycle.
_packages/dart\_frog\_gen/lib/src/validate\_route\configuration · high confidence
Dev server hooks refactor and validation
The \dart\_frog\_dev\_server\ hooks have been refactored to use \dart\_frog\_gen\ for route configuration, introducing pre-generation validation that detects and reports route conflicts and rogue routes. The hook logic has been decomposed into multiple files, including a new \pre\_gen.dart\ entry point and a \src/exit\_overrides.dart\ utility for testable exit behavior. Additionally, \.gitignore\ and \analysis\_options.yaml\ files were added to the hooks directory.
_bricks/dart\_frog\_dev\server/hooks · high confidence
Improved route and middleware generation with conflict detection
The Dart Frog CLI now uses updated hooks to validate route configurations before generation, preventing rogue routes and conflicts. The \pre\_gen\ hook now checks for existing routes and middleware, ensuring that new files do not clash with current project structure. The \post\_gen\ hook handles file renaming to avoid rogue routes. These changes improve the reliability of the \dart\_frog new\ command by catching errors early and ensuring generated code adheres to Dart Frog's routing conventions.
_bricks/dart\_frog\new/hooks · high confidence
Improved support for Dart workspaces and external path dependencies
The production server build process now properly handles Dart workspaces by copying the workspace root's \pubspec.lock\ to ensure consistent dependency versions. It also detects and bundles external path dependencies into the build directory, and disables workspace resolution during the build to avoid resolution issues. Additionally, the build script now reports route conflicts and rogue routes as errors, and supports custom Dockerfiles and Dart versions.
_bricks/dart\_frog\_prod\server/hooks · high confidence
Introduce domain-based architecture for the Dart Frog daemon
The daemon's internal structure has been refactored to use a domain-based architecture, introducing new \DaemonDomain\, \DevServerDomain\, and \RouteConfigurationDomain\ classes that extend a shared \DomainBase\. This change organizes daemon logic into distinct, manageable units for managing the daemon lifecycle, starting/stopping dev servers, and watching route configurations, making the daemon's internal behavior more modular and testable.
_packages/dart\_frog\cli/lib/src/daemon/domain · high confidence
Production build now respects workspace pubspec.lock for dependency resolution
The Dart Frog CLI build process now copies the workspace's pubspec.lock file into the build directory to ensure the production build uses the exact same dependency versions as the workspace. This change introduces new logic in the build hooks to detect workspace roots, disable workspace resolution temporarily, and copy the lockfile, ensuring consistent and reproducible production builds in workspace setups.
_packages/dart\_frog\cli/lib/src/commands/build/templates · high confidence
Production server template updated to support custom entrypoints and IPv6
The generated production server entry point (bin/server.dart) has been updated to support a custom entrypoint via the \invokeCustomEntrypoint\ template variable, allowing users to provide their own initialization logic. The server now binds to \InternetAddress.anyIPv6\ to support both IPv4 and IPv6 connections, and includes a startup log message indicating the running address and port.
_bricks/dart\_frog\_prod\server/\\brick\\/build/bin · medium confidence
Refactored route configuration generation with improved specificity and path handling
The route generation logic in \dart\_frog\_gen\ has been refactored to improve how routes are resolved and prioritized. A new \route\_specificity.dart\ module was introduced to determine route priority, ensuring that static routes take precedence over dynamic ones when they have equal specificity. Additionally, the \path\_to\_route.dart\ utility was added to normalize file paths into clean API routes, and the main \buildRouteConfiguration\ function was restructured to better handle nested directories, middleware, and endpoint detection. These changes ensure that route generation is more predictable and correctly handles complex directory structures and dynamic route aliases.
_packages/dart\_frog\gen/lib/src · high confidence
Test coverage
Add e2e test infrastructure helpers for the Dart Frog CLI; Add unit tests for the echo route; Added VSCode integration test runner; Added automated tests for the VS Code extension; Added end-to-end tests for Dart Frog CLI commands; Added end-to-end tests for example apps; Added end-to-end tests for the Dart Frog CLI daemon; Added end-to-end tests for the kitchen sink example; Added route test for the index page; Added tests for Dart Frog New hooks; Added tests for Dart Frog extension utilities; Added tests for PubspecLock parsing and validation; Added tests for VS Code extension commands; Added tests for core Dart Frog components; Added tests for daemon protocol message handling; Added tests for form data parsing; Added tests for production server build hooks; Added tests for route configuration validation; Added tests for status bar items; Added tests for the Dart Frog CLI commands and daemon; Added tests for the Dart Frog dev server pre\_gen hook; Added tests for the Dart Frog production server hooks; Added tests for the Run CodeLens provider; Added tests for the web\_socket\_counter example; Added unit tests for InMemoryTodosDataSource; Added unit tests for dart\_frog\_gen code generation components; Added unit tests for kitchen\_sink example routes and middleware; Added unit tests for the Dart Frog VS Code extension's daemon components; Added unit tests for the Hello World example's index route; Added unit tests for the Todos example application; Added unit tests for the todos data source package.
Dependencies
Updated dependencies across Dart Frog project
This update refreshes dependencies across the Dart Frog codebase. The documentation site has been upgraded to Astro 5.18.0 and Starlight 0.37.6, with corresponding updates to dev dependencies like Prettier and Tailwind. All Dart Frog example applications have been updated to use \dart\_frog\ ^1.0.0 and \dart\_frog\_lint\ ^0.1.0, while the \create\_dart\_frog\ brick now targets SDK ^3.11.0. Additionally, the \dart\_frog\_gen\ dependency has been upgraded to ^2.0.0 in the project's internal hooks and bricks.
(dependencies) · high confidence
Written by watchdog.canine.dev from the codebase's own history, inside the signed delivery this page is composed from.
How this codebase got here
This is the PUBLIC form of this artifact. Findings are listed in full, but the details of SECURITY findings — which rule fired, in which file, on which line, and how to fix it — are deliberately withheld, and any secret-scanner results are excluded entirely. Where detail is absent here it was REMOVED FOR PUBLICATION; it is not missing from the analysis. The complete artifact is available from the repository owner.
Score
- CAI 58 → 59 (+1.3)
- Rubric changed (rubric-2026.08.19 → rubric-2026.09.15) — scores are not directly comparable.
Lenses
- Code Health 98 → 94 (-3.4)
- Architecture 86 → 86 (+0.6)
- Maturity 50 → 54 (+3.8)
- Readiness 63 → 64 (+1.0)
- Security 50 → 50 (+0.6)
- Domain Modelling 100 → 100 (+0.0)
Resolved (40)
- Coverage not included — suite not readable by the collector
- Dependency hygiene not measured — dependency manifest found but not parsed for hygiene
- Further sole-owners (lower concentration)
- High CVE: [GHSA redacted] (extensions/vscode/package-lock.json)
- High CVE: [GHSA redacted] (extensions/vscode/package-lock.json)
- High CVE: [GHSA redacted] (extensions/vscode/package-lock.json)
- High CVE: [GHSA redacted] (extensions/vscode/package-lock.json)
- High CVE: [GHSA redacted] (extensions/vscode/package-lock.json)
- High CVE: [GHSA redacted] (extensions/vscode/package-lock.json)
- High CVE: [GHSA redacted] (extensions/vscode/package-lock.json)
- High vulnerability: [GHSA redacted] (extensions/vscode/package-lock.json)
- High: security finding (details withheld)
- High: security finding (details withheld)
- High: security finding (details withheld)
- High: security finding (details withheld)
- High: security finding (details withheld)
- High: security finding (details withheld)
- High: security finding (details withheld)
- High: security finding (details withheld)
- High: security finding (details withheld)
- …and 20 more
New (107)
- DevServerRunner.start (cognitive 19) (packages/dart_frog_cli/lib/src/dev_server_runner/dev_server_runner.dart)
- DevServerRunner.start (cyclomatic 19) (packages/dart_frog_cli/lib/src/dev_server_runner/dev_server_runner.dart)
- Documentation: no project overview (README.md)
- Documentation: no usage examples (README.md)
- Duplicated block (22 lines × 3) (bricks/dart_frog_dev_server/hooks/src/exit_overrides.dart)
- Duplicated block (26 lines × 2) (packages/dart_frog_cli/lib/src/daemon/domain/dev_server_domain.dart)
- Duplicated block (7 lines × 2) (packages/dart_frog_cli/lib/src/daemon/domain/dev_server_domain.dart)
- High CVE: [GHSA redacted] (extensions/vscode/package-lock.json)
- High CVE: [GHSA redacted] (extensions/vscode/package-lock.json)
- High CVE: [GHSA redacted] (extensions/vscode/package-lock.json)
- High CVE: [GHSA redacted] (extensions/vscode/package-lock.json)
- High CVE: [GHSA redacted] (extensions/vscode/package-lock.json)
- High CVE: [GHSA redacted] (extensions/vscode/package-lock.json)
- High CVE: [GHSA redacted] (extensions/vscode/package-lock.json)
- High vulnerability: [GHSA redacted] (extensions/vscode/package-lock.json)
- High: security finding (details withheld)
- High: security finding (details withheld)
- High: security finding (details withheld)
- High: security finding (details withheld)
- High: security finding (details withheld)
- …and 87 more
Written by watchdog.canine.dev from the codebase's own history, inside the signed delivery this page is composed from.
Survey your own repository
dart-frog-dev/dart_frog was measured the same way every project in this corpus was: the same rubric, at a pinned commit, with the result published in full. Point a surveyor at a repository you know and see whether you agree with it.
About this page
- The score is its most recent published measurement, taken on 23 September 2026 at a pinned commit. It is not a live figure and does not change until the project is measured again.
- Measured at commit f258c57d91c66193ae5d3961152be5c760c9bce0 — the exact code this score is about.
- Scored under rubric-2026.09.15 — the same rubric and the same method as every other entry in this index.
- Measured by watchdog.canine.dev using codehealth-analyzer preprod-955b9cee9818.