Tarantule Core Architecture
The API tree
The API injectible classes follow a certain inheritance tree structure whose abstractions are useful to notice. The API structure is akin to the following tree diagram:
BaseAPI
├── ApplicationAPI
│ ├── Desktop
│ ├── Mobile
│ └── Web
└── EmailAPI
This is just an example, but it represents the idea that tarantula core has a general base API, and further APIs can inherit from others. This abstraction is convenient, as all "applications" (desktop, mobile, web) have common methods such as "click", allowing for tests to be automated on multiple platforms simultaneously as long as they share certain components.