Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/askui/askui

What can be said can be solved.
https://github.com/askui/askui

ai artificial-intelligence automation e2e-testing testing ui-testing

Last synced: 3 days ago
JSON representation

What can be said can be solved.

Awesome Lists containing this project

README

        

![askui logo](./img/askui-logo-white.svg.svg#gh-dark-mode-only)
![askui logo](./img/askui-logo.svg#gh-light-mode-only)

*Reliable, automated end-to-end-automation that only depends on what is shown on your screen instead of the technology or platform you are running on*


What Can Be Said Can Be Solved

## Disclaimer

This repo contains the AskUI SDK (ADK) written in TypeScript. Releases are done from the root repository. This may change in the future as we plan to include also packages, libraries etc. written in other languages in this repo to make the power of AskUI available to non-typescript/-javascript developers as well.

## Repository Structure

At root level we store the configuration for commit hooks, CI/CD and releasing a new version of the ADK.

Under `packages` you find the ADKs for different languages.

## Installation
Run an `npm install` inside the root directory to install the necessary dependencies for commit hooks and releasing a new version.

```sh
$ npm install
```

### TypeScript ADK
Run `npm install` inside `packages/askui-nodejs` to install the dependencies.

To build the TypeScript ADK run

```sh
npm run build
```

## Contributing

### Branching

Your branch name should conform to the format `-`, e.g., let's say you have an issue named *Hello World* with id *AS-101*, the the branch name would be `AS-101-hello-world`. We use the issue id prefix to prepend a link to the issue to the commit message header. In some cases, when doing a quick fix of a typo etc. when there is no issue, feel free to just use a descriptive name of what you are doing, e.g., `fix-typo-in-example-readme`.

### Commit Message Standard

Commit messages should conform to [Conventional Commits Message Standard](https://www.conventionalcommits.org/en/v1.0.0/). Exceptions to this rule may be merge commits.

### Githooks

This monorepo uses [githooks](https://git-scm.com/docs/githooks) with [husky](https://github.com/typicode/husky) to lint and test the code, to help you stick to the commit message standard by opening up a cli for constructing the commit message on each commit, prepending the commit message with the issue number or linting the commit message etc. In some cases, e.g., when using a Git client such as [Git Tower](https://www.git-tower.com/) or [GitKraken](https://www.gitkraken.com/), cherry-picking, rebasing or in a ci pipeline, you may want to disable githooks, especially the interactive cli.

For skipping the interactive cli when commiting, set the environment variable `SKIP_CZ_CLI` to `true`.
```sh
$ export SKIP_CZ_CLI=true
```

For skipping all githooks, set the environment variable `HUSKY` to `0`.
```sh
$ export HUSKY=0
```

In a ci pipeline, the githooks are skipped by default.