Skip to content

Add Devcontainer Support for LaunchMap #53

@SakshayMahna

Description

@SakshayMahna

Goal

Set up a .devcontainer/ environment so contributors can:

  • Run the parser & visualizer without installing ROS 2 locally.
  • Execute all tests (parser + Playwright).
  • Generate and update Playwright snapshots in a consistent Linux environment, avoiding OS rendering differences.

Acceptance Criteria

  • Create .devcontainer/devcontainer.json and Dockerfile with:
    • Python (parser)
    • Node.js + npm (frontend)
    • Playwright dependencies including browsers preinstalled (npx playwright install --with-deps)
    • System libraries for consistent rendering (fonts, GTK, ffmpeg, etc.)
    • ROS 2 minimal dependencies for parser tests
    • ruff and eslint for linting
    • Ensure running tests in CONTRIBUTING.md works without extra steps.
    • Document how to generate Playwright snapshots inside the container.

Sub-Tasks

  • Create .devcontainer/devcontainer.json with extensions & settings
  • Create Dockerfile with all parser + frontend + Playwright deps
  • Preinstall Playwright browsers (chromium, firefox, webkit)
  • Document usage in CONTRIBUTING.md (open in container, run tests, generate snapshots)

Notes for Contributors

  • The Devcontainer will run on a Linux base, so snapshots generated here will match CI output.
  • This environment will eventually be the recommended way to update Playwright snapshots.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions