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

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions