Skip to content

Instantly share code, notes, and snippets.

@judell
Last active November 2, 2025 18:16
Show Gist options
  • Save judell/815a9b81cec4f37aac756e307beb8588 to your computer and use it in GitHub Desktop.
Save judell/815a9b81cec4f37aac756e307beb8588 to your computer and use it in GitHub Desktop.
cbfs setup validation
  1. Verify Node.js/npm prerequisites

  node --version && npm --version
  Output: v20.19.0 and 10.8.2 ✅ (meets v20+ requirement)

  ---
  2. Install .NET 9.0 SDK on macOS

  brew install dotnet
  Output:
  - Successfully installed to /opt/homebrew/Cellar/dotnet/9.0.8
  - Note about potentially needing DOTNET_ROOT environment variable
  - Installation completed without errors ✅

  ---
  3. Verify .NET SDK installation

  dotnet --version
  Output: 9.0.109 ✅ (confirms SDK, not just runtime, was installed)

  ---
  4. Install frontend dependencies

  npm install
  Output:
  - Installed 895 packages in 12 seconds
  - Deprecation warnings (as expected per guide)
  - Completed successfully ✅

  ---
  5. Start backend API server

  npm run start:backend
  Output evaluated:
  - Compilation warnings (expected C# nullable reference warnings)
  - Key success message: "Starting MWD Mock Server:"
  - "Now listening on: http://localhost:5001"
  - "Application started. Press Ctrl+C to shut down." ✅

  ---
  6. Start frontend development server

  npm run start
  Output evaluated:
  - Starting with options: { withMock: false, withProxy: undefined }
  - "➜  Local:   http://localhost:5173/"
  - CJS deprecation warning (informational, not blocking) ✅

  ---
  7. Copy test files

  cp tests/fixtures/* ~/mwd/shares/Documents/
  Verification:
  ls -lh ~/mwd/shares/Documents/
  Output evaluated:
  - test.jpeg (58K) ✅
  - test.pdf (3.8K) ✅
  - test.xlsx (8.1K) ✅
  - Plus additional pre-existing files

  ---
  8. Test backend API endpoint

  curl -H "Authorization: SessionID 12345" "http://localhost:5001/api/v3/ListFolder?path=:sh:Documents:/"
  Output evaluated:
  - Received valid JSON array with 9 file objects
  - Each object contains: name, path, created, modified, attributes, size
  - Test files present with correct sizes:
    - test.jpeg: 59,276 bytes
    - test.pdf: 3,908 bytes
    - test.xlsx: 8,337 bytes
  - HTTP 200 response ✅

  ---
  Key Validation Points:

  1. Installation process: brew install dotnet worked without manual PATH configuration
  2. Build process: Backend compiled with warnings but ran successfully
  3. Server startup: Both servers started and listened on expected ports
  4. File system: Backend correctly created ~/mwd/shares/Documents/ structure
  5. API authentication: Hardcoded SessionID 12345 worked as documented
  6. Data flow: Files copied to filesystem were accessible via API

  Documentation Accuracy:

  All steps executed successfully in order without modifications or workarounds.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment