Why CraftDriver? โ
CraftDriver is for writing boringly reliable automation against real browsers, with code that reads nicely.
What It Cares About โ
- ๐บ Focused Node.js API - browser automation without a giant framework around it.
- ๐งญ Real browsers - drives installed Chrome, Chromium, and Firefox instead of patched browser engine builds.
- ๐ Standards that age well - W3C WebDriver standards stay stable while browser-private protocols change.
- ๐ฆ Readable, auto-waited flows - role, label, text, test id, CSS, XPath, click, fill, and expect.
- ๐ก Network control - mock, block, intercept, and wait for browser requests and responses.
- ๐ Reusable sessions - save cookies and localStorage, then launch already signed in.
- โฑ๏ธ Virtual clock - freeze or fast-forward
Date, timers, and time-sensitive UI. - โฟ Accessibility audits - run axe-core checks on pages, elements, and locators.
- ๐งพ Trace evidence - capture actions, console output, errors, network events, and screenshots.
- ๐ค Agent-friendly - CLI, MCP, and assistant rules when coding agents need the browser.
Good Fits โ
- End-to-end tests in Node.js.
- Browser scripts and diagnostics.
- Projects that want installed Chrome, Chromium, and Firefox through WebDriver.
- Tests that need network mocks, saved auth state, virtual time, or accessibility gates.
- Coding agents that should use the same browser automation primitives as humans.
Not The Goal โ
CraftDriver is not trying to be a giant testing universe. It is the browser control layer: launch, navigate, click, fill, assert, inspect, debug, and get on with your day.