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

https://github.com/suiramdev/docwright

docwright is a library that generates UI documentation from Playwright-style test scripts. It automates the process of documenting your application's user interface.
https://github.com/suiramdev/docwright

automation bun documentation documentation-tool javascript nodejs npm npm-package package playwright tools typescript user-interface vitest

Last synced: 2 months ago
JSON representation

docwright is a library that generates UI documentation from Playwright-style test scripts. It automates the process of documenting your application's user interface.

Awesome Lists containing this project

README

          


docwright demo

docwright



npm version
Bun
Playwright

automate your application's UI documentation


docwright is a library that generates UI documentation from Playwright-style test scripts. It automates the process of documenting your application's user interface.

[Read API](./docs/api.md)

## Quick Start

1. **Install docwright**

```bash
bun install @docwright/core
```

> Due to Node.js's limitations, docwright currently only works with Bun. [Read more](#technical-details)

2. **Create a `docwright.config.ts` file.**

```bash
bunx docwright init
```

[Example `docwright.config.ts`](./playground/docwright.config.ts)

3. **Run docwright**

```bash
bunx docwright generate
```

### Create your first scenario

Create a file matching your docwright.config.ts glob pattern.

Example: [portfolio.docwright.ts](./playground/portfolio.docwright.ts)

```typescript
import {
describe,
scenario,
text,
screenshot,
highlight,
} from "@docwright/core";

describe("suiram.dev portfolio", () => {
scenario("How to book a call", async ({ page }) => {
await text("Navigate to https://suiram.dev");
await page.goto("https://suiram.dev");
await text("Click the book a call button");
await highlight(
page.locator("a[href='https://calcom.suiram.dev/suiramdev/30min']")
);
await screenshot(page);
});
});
```

## Credits

Thanks to:

- [@yanndarwish](https://github.com/yanndarwish)
- [@aziv7](https://github.com/aziv7)