Skip to content

MelbourneDeveloper/dart_node

Repository files navigation

dart_node

Write your entire stack in Dart: React web apps, React Native mobile apps with Expo, and Node.js Express backends.

Documentation

React and React Native

Packages

Package Description
dart_node_core Core JS interop utilities
dart_node_express Express.js bindings
dart_node_ws WebSocket bindings
dart_node_react React bindings
dart_node_react_native React Native bindings
dart_node_mcp MCP server bindings
dart_node_better_sqlite3 SQLite3 bindings
dart_jsx JSX transpiler for Dart
reflux Redux-style state management
dart_logging Structured logging
dart_node_coverage Code coverage for dart2js

Tools

Tool Description
too-many-cooks Multi-agent coordination MCP server (npm)
Too Many Cooks VSCode VSCode extension for agent visualization

Dev Container (Recommended)

This project includes a Dev Container that provides a fully configured development environment with Dart, Node.js, and Chromium pre-installed. Open the project in VSCode and select Reopen in Container when prompted.

Why use it?

  • Consistent environment — Dart 3.10, Node 20, and Chromium are pinned and pre-configured. No version mismatches across machines.
  • Avoids Windows + Node.js performance issues — Node.js file-heavy operations (npm install, dart2js output, node_modules creation) run up to 4x slower on Windows than Linux due to NTFS overhead and Windows Defender real-time scanning. Yo will probably get better performance running on WSL2. The Dev Container sidesteps this entirely by running inside a Linux container.
  • Zero setup — Coverage thresholds, linting, and test tooling are pre-configured via environment variables and VSCode settings.

Quick Start

# Switch to local deps
dart tools/switch_deps.dart local

# Run everything
sh examples/run_taskflow.sh

Open http://localhost:8080/web/

Mobile: Use VSCode launch config Mobile: Build & Run (Expo)

License

BSD 3-Clause License. Copyright (c) 2025, Christian Findlay.