2021-01-01 15:17:27 -08:00
---
id: README
title: "Documentation"
---
2020-04-24 12:19:31 -07:00
2020-07-31 11:58:12 -07:00
### Capabilities
Playwright is a library to automate [Chromium ](https://www.chromium.org/Home ), [Firefox ](https://www.mozilla.org/en-US/firefox/new/ ) and [WebKit ](https://webkit.org/ ) with a single API. Playwright is built to enable cross-browser web automation that is **ever-green** , **capable** , **reliable** and **fast** .
* Ever-green browser engines
* Headless execution
* Scenarios that span multiple pages, domains and iframes
* Auto-wait for elements to be ready before executing actions (like click, fill)
* Reliable signals instead of timeouts (like network response, popup, navigation)
* Intercept network activity for stubbing and mocking network requests
* Emulate mobile devices, geolocation, permissions
* Support for web components via shadow-piercing selectors
* Native input events for mouse and keyboard
* Upload and download files
2020-04-19 18:47:36 -07:00
### Table of contents
2020-08-04 15:48:32 -07:00
1. Introduction
2021-01-01 15:17:27 -08:00
- [Why Playwright? ](./why-playwright.md )
- [Get started ](./intro.md )
- [Core concepts ](./core-concepts.md )
- [Debugging ](./debug.md )
- [Supported languages ](./languages.md )
2020-08-04 15:48:32 -07:00
1. Guides
2021-01-01 15:17:27 -08:00
- [Selectors ](./selectors.md )
- [Input ](./input.md )
- [Emulation ](./emulation.md )
- [Network ](./network.md )
- [Assertions ](./assertions.md )
- [Verification ](./verification.md )
- [Navigations ](./navigations.md )
- [Multi-page scenarios ](./multi-pages.md )
2020-08-11 15:46:36 -07:00
1. Tutorials
2021-01-01 15:17:27 -08:00
- [Authentication ](./auth.md )
- [Page object models ](./pom.md )
2020-08-04 15:48:32 -07:00
1. Integrations
2021-01-01 15:17:27 -08:00
- [Test runners ](./test-runners.md )
2021-01-04 13:50:29 -08:00
- [Docker ](./docker.md )
2021-01-01 15:17:27 -08:00
- [Continuous integration ](./ci.md )
2020-08-04 15:48:32 -07:00
1. Reference
2021-01-03 08:47:29 -08:00
- [API Reference ](./api/class-playwright.md )
2021-01-01 15:17:27 -08:00
- [Actionability ](./actionability.md )
- [Advanced installation ](./installation.md )
- [Extensibility ](./extensibility.md )
2020-09-03 16:57:22 -07:00
1. Get help
2021-01-01 15:17:27 -08:00
- [Slack community ](https://join.slack.com/t/playwright/shared_invite/enQtOTEyMTUxMzgxMjIwLThjMDUxZmIyNTRiMTJjNjIyMzdmZDA3MTQxZWUwZTFjZjQwNGYxZGM5MzRmNzZlMWI5ZWUyOTkzMjE5Njg1NDg )
- [Stack Overflow ](https://stackoverflow.com/tags/playwright )
- [GitHub ](https://github.com/microsoft/playwright/issues )
2021-01-03 08:47:29 -08:00
2021-01-01 15:17:27 -08:00
[Playwright]: api/class-playwright.md "Playwright"
[Browser]: api/class-browser.md "Browser"
[BrowserContext]: api/class-browsercontext.md "BrowserContext"
[Page]: api/class-page.md "Page"
[Frame]: api/class-frame.md "Frame"
[ElementHandle]: api/class-elementhandle.md "ElementHandle"
[JSHandle]: api/class-jshandle.md "JSHandle"
[ConsoleMessage]: api/class-consolemessage.md "ConsoleMessage"
[Dialog]: api/class-dialog.md "Dialog"
[Download]: api/class-download.md "Download"
[Video]: api/class-video.md "Video"
[FileChooser]: api/class-filechooser.md "FileChooser"
[Keyboard]: api/class-keyboard.md "Keyboard"
[Mouse]: api/class-mouse.md "Mouse"
[Touchscreen]: api/class-touchscreen.md "Touchscreen"
[Request]: api/class-request.md "Request"
[Response]: api/class-response.md "Response"
[Selectors]: api/class-selectors.md "Selectors"
[Route]: api/class-route.md "Route"
[WebSocket]: api/class-websocket.md "WebSocket"
[TimeoutError]: api/class-timeouterror.md "TimeoutError"
[Accessibility]: api/class-accessibility.md "Accessibility"
[Worker]: api/class-worker.md "Worker"
[BrowserServer]: api/class-browserserver.md "BrowserServer"
[BrowserType]: api/class-browsertype.md "BrowserType"
[Logger]: api/class-logger.md "Logger"
[ChromiumBrowser]: api/class-chromiumbrowser.md "ChromiumBrowser"
[ChromiumBrowserContext]: api/class-chromiumbrowsercontext.md "ChromiumBrowserContext"
[ChromiumCoverage]: api/class-chromiumcoverage.md "ChromiumCoverage"
[CDPSession]: api/class-cdpsession.md "CDPSession"
[FirefoxBrowser]: api/class-firefoxbrowser.md "FirefoxBrowser"
[WebKitBrowser]: api/class-webkitbrowser.md "WebKitBrowser"
[Array]: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array "Array"
[Buffer]: https://nodejs.org/api/buffer.html#buffer_class_buffer "Buffer"
[ChildProcess]: https://nodejs.org/api/child_process.html "ChildProcess"
[Element]: https://developer.mozilla.org/en-US/docs/Web/API/element "Element"
[Error]: https://nodejs.org/api/errors.html#errors_class_error "Error"
[Evaluation Argument]: ./core-concepts.md#evaluationargument "Evaluation Argument"
[Map]: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Map "Map"
[Object]: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object "Object"
[Promise]: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise "Promise"
[RegExp]: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/RegExp "RegExp"
[Serializable]: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/JSON/stringify#Description "Serializable"
[UIEvent.detail]: https://developer.mozilla.org/en-US/docs/Web/API/UIEvent/detail "UIEvent.detail"
[URL]: https://nodejs.org/api/url.html "URL"
[USKeyboardLayout]: ../src/usKeyboardLayout.ts "USKeyboardLayout"
[UnixTime]: https://en.wikipedia.org/wiki/Unix_time "Unix Time"
[boolean]: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Data_structures#Boolean_type "Boolean"
[function]: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Function "Function"
[iterator]: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Iteration_protocols "Iterator"
[null]: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/null "null"
[number]: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Data_structures#Number_type "Number"
[origin]: https://developer.mozilla.org/en-US/docs/Glossary/Origin "Origin"
[selector]: https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Selectors "selector"
[Readable]: https://nodejs.org/api/stream.html#stream_class_stream_readable "Readable"
[string]: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Data_structures#String_type "string"
[xpath]: https://developer.mozilla.org/en-US/docs/Web/XPath "xpath"