Cypress

Fast, easy, and reliable end-to-end and component testing for anything that runs in a browser.

Tool
npm
v15.21.0
50,980stars
MIT License

Repository Health

Pre-computed score based on development activity, maintenance, community, maturity, and trend momentum.How we score it →
93/100Excellent
Development Activity100
Maintenance96
Community76
Maturity60
Momentum40

Technical Analysis

AI-assessed by reading the actual repository — architecture, code quality, innovation, and documentation.How we score it →
88/100Excellent
Architecture90
Code Quality88
Innovation90
Learning Curve82

Cypress is an open-source JavaScript testing framework that runs directly inside the browser alongside the application under test, rather than driving it remotely like Selenium-based tools. This architecture gives it native access to the DOM, network layer, and the app’s own JavaScript, which powers features like automatic waiting, real-time reloads, and time-travel debugging through command snapshots.

Beyond end-to-end testing, Cypress ships a component testing runner for React, Vue, Angular, and Svelte, letting teams mount and test individual components in the same real-browser environment used for full app tests. It bundles its own Electron-based test runner (the Cypress App) plus a CLI, making the whole workflow — write a spec, run it headless or interactively, inspect failures — self-contained after a single npm install.

What You Get

  • An Electron-based interactive test runner (Cypress App) with time-travel snapshots for every command
  • A headless CLI mode for CI pipelines, with built-in video recording and screenshots on failure
  • Automatic waiting and retry-ability for assertions and commands, eliminating most manual sleep/wait calls
  • Network traffic control via cy.intercept() for stubbing, spying, and asserting on XHR/fetch requests
  • A component testing runner for React, Vue, Angular, and Svelte alongside classic E2E testing
  • First-class TypeScript support and a large plugin/ecosystem for accessibility, visual testing, and more

Common Use Cases

  • End-to-end regression testing of web applications in CI/CD pipelines
  • Component-level testing of React/Vue/Angular/Svelte components in isolation
  • Visually debugging flaky UI behavior using the interactive runner’s time-travel snapshots
  • Mocking and asserting on backend API calls during frontend integration tests
  • Cross-browser testing across Chrome, Edge, Firefox, and Electron

Under The Hood

Architecture — Cypress is a Lerna/Nx-managed monorepo (packages/) where the published cypress npm module (built from cli/) is a thin installer/launcher wrapping a separately-distributed Electron binary (packages/electron, packages/launcher). The core execution model runs test code in the same browser process as the application (packages/driver), proxied through a Node server process (packages/server, packages/proxy, packages/https-proxy) that intercepts and rewrites network traffic (packages/rewriter, packages/net-stubbing) — this in-browser execution is what enables synchronous DOM access and automatic retry-ability, in contrast to WebDriver-based tools that drive the browser remotely.

Tech Stack — The codebase is predominantly TypeScript (~59%) with a large JavaScript portion, built with a custom Gulp/Webpack/Rollup toolchain (gulpfile.js, rollup.config.mjs) and Yarn workspaces orchestrated by Lerna and Nx. The desktop app UI (packages/app, packages/launchpad, packages/frontend-shared) is a Vue 3 application; the GraphQL layer (packages/data-context) mediates state between the server and UI processes.

Code Quality — Each package carries its own test/ directory (unit and integration specs visible under packages/net-stubbing/test, packages/proxy/test, packages/driver, etc.), and the project uses Vitest for unit tests plus its own Cypress test suite for dogfooding E2E coverage (system-tests/). ESLint config is centralized (packages/eslint-config), and CI (CircleCI, visible in README badges) runs the full suite plus Cypress Cloud recording on every PR against the develop branch.

API Design — The public API surface (cy.visit(), cy.get(), cy.intercept(), etc.) is a fluent, chainable command queue with consistent retry/assertion semantics, documented extensively at on.cypress.io. Getting started requires a single npm install cypress --save-dev plus cypress open, with zero required configuration for a first E2E test — configuration (cypress.config.js) is only needed for customization like base URL, plugins, or component testing setup.

Used by 38 apps in this directory

TypeScript
72%
AGPL 3.0

APITable

Low Code Platforms · Databases

15,526

API-first collaborative spreadsheet-database platform that auto-generates REST APIs and lets teams build internal tools, CRMs, and dashboards without code.

View details
53
Repo Health
77
Technical
60
Dependency
Built with
TypeScript72%
Java22%
Updated 9 months ago
TypeScript
66%
Apache 2.0

Appsmith

Developer Tools · Automation · No Code Platforms

40,707

Open-source low-code platform to build admin panels, dashboards, and internal tools connected to any database or API.

View details
94
Repo Health
79
Technical
68
Dependency
Built with
TypeScript66%
Java22%
Updated today
TypeScript
53%
Other

Chaskiq

CRM · Customer Support

3,560

Self-hosted live chat, video calls, help center, and marketing automation — a full-stack Intercom alternative you run on your own infrastructure.

View details
60
Repo Health
66
Technical
68
Dependency
Built with
TypeScript53%
Ruby36%
Updated 1 months ago
JavaScript
82%
Other

Countly

Analytics · Marketing

5,887

Privacy-first, self-hosted analytics and customer engagement platform with full data ownership, GDPR compliance, and AI-powered insights across mobile, web, desktop, and IoT.

View details
96
Repo Health
82
Technical
68
Dependency
Built with
JavaScript82%
Updated today
TypeScript
62%
Other

Flowise

Developer Tools · Automation · No Code Platforms

55,379

Drag-and-drop visual builder for AI agents, RAG pipelines, and multi-agent systems—deploy anywhere in minutes.

View details
91
Repo Health
77
Technical
64
Dependency
Built with
TypeScript62%
JavaScript27%
Updated 6 days ago
TypeScript
54%
Other

Focalboard

Productivity · Project Management · Collaboration

26,409

Self-hosted, open source project management with Kanban, table, gallery, and calendar views — a privacy-first alternative to Trello, Notion, and Asana.

View details
58
Repo Health
82
Technical
67
Dependency
Built with
TypeScript54%
Go40%
Updated 3 months ago
Ruby
63%
AGPL 3.0

Forem

Community · Blogging

22,769

Open source Ruby on Rails platform for building developer communities with articles, discussions, and social profiles—the same software that powers dev.to.

View details
84
Repo Health
79
Technical
70
Dependency
Built with
Ruby63%
JavaScript19%
HTML13%
Updated yesterday
Go
61%
Apache 2.0

Harness Open Source

Developer Tools · Devops · Code Editors

38,017

A unified open source DevOps platform combining Git hosting, CI/CD pipelines, cloud development environments, and artifact registries in a single self-hosted system.

View details
89
Repo Health
79
Technical
65
Dependency
Built with
Go61%
TypeScript34%
Updated 2 days ago
Go
84%
MIT

Hatchet

AI Development · Developer Tools · Automation

7,749

A Postgres-backed orchestration engine for background tasks, AI agents, and durable workflows that replaces Redis queues and multi-datastore durable execution platforms with a single self-hostable service.

View details
88
Repo Health
83
Technical
69
Dependency
Built with
Go84%
PLpgSQL11%
Updated today

Join founders buildingwith open source

Opinionated takes, migration guides, cost-saving tips, and insights from the open source ecosystem.

Subscribe on Substack
Join 750+ subscribers

Search