Below is a list of complete applications tested in Cypress.
Name | JS | Description |
---|---|---|
Kitchen Sink | Vanilla | Showcases every single Cypress command |
TodoMVC | React | Compares the official TodoMVC Selenium tests to Cypress |
Realworld | React | Full end-to-end tests for the gothinkster/realworld “Conduit” app |
Phonecat | Angular 1.x | Compares the official Phonecat Protractor tests to Cypress |
PieChopper | Angular 1.x | Tests a fully featured application with many forms and modals |
Kitchen Sink
https://github.com/cypress-io/cypress-example-kitchensinkThis is an example app which is used to showcase every command available in Cypress.
- Query and traverse DOM elements using
cy.get()
,cy.find()
and other commands. .type()
into forms,.click()
elements,.select()
dropdowns, and other actions.- Change the size of the viewport using
cy.viewport()
. - Navigate to other pages.
cy.intercept()
network requests,cy.wait()
on responses, and stub response data usingcy.fixture()
.- Inspect and manipulate cookies and localStorage.

TodoMVC
https://github.com/cypress-io/cypress-example-todomvcThis repo compares Cypress Tests to official TodoMVC Tests. This gives you a good comparison of writing and running tests in Cypress versus vanilla Selenium.
- Query and make assertions about DOM elements state.
- Type into an input using
cy.type()
. - Create a custom
cy.createTodo()
command to run multiple cy commands. - Click and double click elements using
cy.click()
andcy.dblclick()
.

TodoMVC Redux
https://github.com/cypress-io/cypress-example-todomvc-reduxA fork the official Redux TodoMVC example. Through a combination of end-to-end and unit tests shows how you can achieve 100% code coverage.
- Instrument and collect code coverage following the Cypress Code Coverage guide.

Realworld
https://github.com/cypress-io/cypress-example-realworldShows a full blogging application, “Conduit”, with back end code and a database.
- Create a test user from tests by running database commands via the
cy.task()
command. - Log in using
cy.request()
and then setting the returned JWT token inlocalStorage
. - Test all aspects of writing blog posts, commenting, and marking favorite posts.
- Collect full stack code coverage using @cypress/code-coverage. Read the Cypress code coverage guide for more details.

Phonecat
https://github.com/cypress-io/cypress-example-phonecatThis tests the original Angular Phonecat example app using Cypress.
- Test redirect behavior of application using
.hash()
. - Test loading behavior of app.

PieChopper
https://github.com/cypress-io/cypress-example-piechopperThis is a single page application with a decent amount of features. The tests involve a lot of form submissions.
- Test mobile responsive views using
cy.viewport()
- Test that the app scrolls correctly
- Check checkboxes using
cy.check()
- Stub responses from our back end using
cy.route()
