diff --git a/.idx/dev.nix b/.idx/dev.nix
new file mode 100644
index 0000000000..20db14f6a0
--- /dev/null
+++ b/.idx/dev.nix
@@ -0,0 +1,50 @@
+# To learn more about how to use Nix to configure your environment
+# see: https://developers.google.com/idx/guides/customize-idx-env
+{ pkgs, ... }: {
+ # Which nixpkgs channel to use.
+ channel = "stable-24.05"; # or "unstable"
+
+ # Use https://search.nixos.org/packages to find packages
+ packages = [
+ pkgs.nodejs_22
+ pkgs.nodePackages.pnpm
+ ];
+
+ # Sets environment variables in the workspace
+ env = {};
+ idx = {
+ # Search for the extensions you want on https://open-vsx.org/ and use "publisher.id"
+ extensions = [
+ # "vscodevim.vim"
+ ];
+
+ # Enable previews
+ previews = {
+ enable = true;
+ previews = {
+ web = {
+ command = ["./dash_site" "serve"];
+ manager = "web";
+ env = {
+ # Environment variables to set for your server
+ PORT = "$PORT";
+ };
+ };
+ };
+ };
+
+ # Workspace lifecycle hooks
+ workspace = {
+ # Runs when a workspace is first created
+ onCreate = {
+ get-submodule = "git submodule update --init --recursive";
+ pnpm-install = "pnpm install";
+ };
+ # Runs when the workspace is (re)started
+ onStart = {
+ # Example: start a background task to watch and re-build backend code
+ # watch-backend = "npm run watch-backend";
+ };
+ };
+ };
+}
diff --git a/README.md b/README.md
index 836120532a..8eadeeca2a 100644
--- a/README.md
+++ b/README.md
@@ -3,6 +3,21 @@
[![Build Status SVG][]][Repo on GitHub Actions]
[![OpenSSF Scorecard SVG][]][Scorecard Results]
+
+
+
+
The documentation site for the [Dart programming language](https://dart.dev),
built with [Eleventy][] and hosted on [Firebase][].
diff --git a/tool/dart_site/lib/src/commands/serve.dart b/tool/dart_site/lib/src/commands/serve.dart
index 8d73041728..80c68b7e35 100644
--- a/tool/dart_site/lib/src/commands/serve.dart
+++ b/tool/dart_site/lib/src/commands/serve.dart
@@ -13,7 +13,12 @@ final class ServeSiteCommand extends Command {
Future run() async {
final process = await Process.start(
'npx',
- const ['eleventy', '--serve', '--incremental'],
+ [
+ 'eleventy',
+ '--serve',
+ '--incremental',
+ '--port=${Platform.environment['PORT'] ?? 4000}'
+ ],
environment: const {
'PRODUCTION': 'false',
},