← BACK

whatnow

An automatic task prioritisation app that tells you what to do next.

Dart ⭐ 0

whatnow

A multiplatform task management app.

Development Tasks Runner (tool/dev.dart)

To avoid OS differences with make, a cross-platform Dart runner script is available at tool/dev.dart:

# Show all available commands
dart run tool/dev.dart help

# Formatting & static analysis
dart run tool/dev.dart format           # Format all packages
dart run tool/dev.dart format --check   # Check formatting without modifying
dart run tool/dev.dart analyze          # Analyze with --fatal-infos
dart run tool/dev.dart fix              # Apply automated fixes
dart run tool/dev.dart fix --check      # Dry-run check for fixes

# Testing
dart run tool/dev.dart test             # Run all tests (core, cli, app)
dart run tool/dev.dart test:core        # Run core tests only
dart run tool/dev.dart test:cli         # Run CLI tests only
dart run tool/dev.dart test:app         # Run Flutter app tests only

# Building & Smoke Testing
dart run tool/dev.dart build:cli        # Compile native CLI bundle
dart run tool/dev.dart smoke:cli        # Smoke test compiled CLI binary
dart run tool/dev.dart build:app        # Build Android debug APK

# Full Local CI Verification Suite (format, analyze, fix, test, build, smoke)
dart run tool/dev.dart verify

Development Setup

Prerequisites

Getting Started

  1. Install dependencies across all workspaces:

    flutter pub get
    
  2. Verify workspace membership:

    dart pub workspace list
    
  3. Check formatting and linting:

    dart format --output=none --set-exit-if-changed .
    dart analyze --fatal-infos
    dart fix --dry-run
    
  4. Run all tests:

    # Core & CLI tests
    dart test packages/core
    dart test packages/cli
    
    # Flutter app tests
    flutter test packages/app
    
  5. Build and smoke test the native CLI:

    cd packages/cli
    dart build cli
    dart run tool/smoke_cli.dart
    cd ../..
    
  6. Run the Flutter Android app (with an emulator or device connected):

    cd packages/app
    flutter run