Skip to main content

Architecture: Tarantula Playwright Adapter

Adapter Pattern​

  • Implements all interfaces from Tarantula Core.
  • Keeps Playwright logic isolated from the core.

Dependency Management​

  • Peer dependencies: @demirtag/tarantula, @playwright/test.
  • No direct dependencies on other frameworks.

Extensibility​

  • Consumers can extend PlaywrightElement for custom element logic.
  • Use useElementClass() to provide custom element implementations.

DI and Services​

  • All services are injectable via tsyringe.
  • Follows the same DI conventions as the core.

Error Handling​

  • Wraps Playwright errors in custom error classes for clarity.