{"repo":"antiwork/shortest","free":true,"listed":false,"github":"https://github.com/antiwork/shortest","clone":"git clone https://github.com/antiwork/shortest.git","description":"QA via natural language AI tests","language":"TypeScript","stars":5663,"topics":["anthropic","automation","chromium","e2e-testing","e2e-tests","end-to-end-testing","javascript","nextjs","playwright","test-automation"],"license":"MIT","category":"scrapers-browser-automation","readme_excerpt":"Shortest AI-powered natural language end-to-end testing framework. Your browser does not support the video tag. Features - Natural language E2E testing framework - AI-powered test execution using Anthropic Claude API - Built on Playwright - GitHub integration with 2FA support - Email validation with Mailosaur Using Shortest in your project If helpful, here's a short video! Installation Use the shortest init command to streamline the setup process in a new or existing project. The shortest init command will: This will: - Automatically install the @antiwork/shortest package as a dev dependency if it is not already installed - Create a default shortest.config.ts file with boilerplate configuration - Generate a .env.local file (unless present) with placeholders for required environment variables, such as ANTHROPIC API KEY - Add .env.local and .shortest/ to .gitignore Quick start 1. Determine your test entry and add your Anthropic API key in config file: shortest.config.ts The Anthropic API key defaults to SHORTEST ANTHROPIC API KEY / ANTHROPIC API KEY environment variables. Can be overwritten via ai.config.apiKey . Optionally, you can configure browser behavior using the browser.contextOptions property in your configuration file. This allows you to pass custom Playwright browser context options. 2. Create test files using the pattern specified in the config: app/login.test.ts Using callback functions You can also use callback functions to add additional assertions and other logic","default_branch":null,"files":null,"tree":[],"storefront":"/r/antiwork","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/antiwork/shortest/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}