Skip to main content

Serenity/JS Project Templates

Serenity/JS Project Templates are preconfigured starter repositories combining popular Serenity/JS modules, test tools, and example scenarios. They give you a fully working foundation for both learning and real-world projects.

You can explore all official templates on GitHub: 👉 Serenity/JS Project Templates

Each template includes:

  • GitHub Actions integration
  • Visual Studio Code settings
  • Automated reporting to GitHub Pages
Short on time?

Go to the official tutorials to see Serenity/JS in action — no local setup needed!

Getting Started with Project Templates

You can:

Serenity/JS Codespaces

Serenity/JS Codespaces provide a complete, browser-ready development workspace hosted on GitHub.

Each Serenity/JS Project Template ships with:

  • a preconfigured development container
  • all required browsers, drivers, and libraries
  • recommended VS Code extensions and configuration

To launch a Codespace, you only need a free GitHub account.

Web Testing

Serenity/JS offers unified web testing APIs that work consistently across different automation tools. You can choose the integration that best fits your project and switch later if needed.

WebdriverIO

WebdriverIO is a progressive automation framework built to automate modern web and mobile applications.

You can use Serenity/JS with WebdriverIO to:

  • automate testing of web applications written in React, Vue, Angular, Svelte, or other frontend frameworks
  • automate testing of hybrid or native mobile applications running in an emulator/simulator, or on a real device
  • enable cross-browser testing, legacy browser testing, and testing using an in-house or vendor-provided Selenium Grid

To use Serenity/JS with WebdriverIO, start with one of the below templates:

Project TemplateFeaturesGet Started
Serenity/JS with Cucumber.js and WebdriverIOCucumber.js; WebdriverIO; TypeScript; GitHub Codespace; GitHub Actions; Local Chrome browser; Serenity BDD reportsGenerate new project
View Code
View Serenity BDD Reports
Start GitHub Codespace
Serenity/JS with Jasmine and WebdriverIOJasmine; WebdriverIO; TypeScript; GitHub Codespace; GitHub Actions; Local Chrome browser; Serenity BDD reportsGenerate new project
View Code
View Serenity BDD Reports
Start GitHub Codespace
Serenity/JS with Mocha and WebdriverIOMocha; WebdriverIO; TypeScript; GitHub Codespace; GitHub Actions; Local Chrome browser; Serenity BDD reportsGenerate new project
View Code
View Serenity BDD Reports
Start GitHub Codespace

Playwright

Playwright is a modern web integration tool for testing websites, web applications, and web components.

Playwright supports the latest rendering engines including Chromium, WebKit, and Firefox, offers an excellent dedicated test runner - Playwright Test, and boasts an outstanding tooling support from both VisualStudio Code and JetBrains AQUA.

You can use Serenity/JS with Playwright to:

  • automate testing of web applications written in Angular, React, Solid, Svelte, Vue, or other frontend frameworks
  • automate testing of web components written in React, Svelte, Vue and Solid
  • enable cross-browser engine testing
Project TemplateFeaturesGet Started
Serenity/JS with Playwright TestSerenity/JS with Playwright and Playwright Test runner, universal web testing template, recommended for most projects

Playwright Test; TypeScript; GitHub Codespace; GitHub Actions; Local Chrome, Firefox, and Webkit browser engines; Playwright Test reports; Serenity BDD reports
Generate new project
View Code
View Serenity BDD Reports
View Playwright Test Reports
Start GitHub Codespace
Serenity/JS with Cucumber and PlaywrightSerenity/JS with Playwright and Cucumber.js test runner, great for BDD projects that rely on Cucumber to define executable specifications

Cucumber, Playwright, TypeScript, GitHub Codespace, GitHub Actions, Local Chrome browser engine, Serenity BDD reports
Generate new project
View Code
View Serenity BDD Reports
View Playwright Test Reports
Start GitHub Codespace

Protractor

Protractor is an end-to-end web testing framework for Angular and AngularJS applications.

warning

As Protractor has reached its end of life, Serenity/JS + Protractor project templates should be used mainly as a reference implementation to migrate existing Protractor projects to Serenity/JS, and from there to a modern web testing framework like Playwright or WebdriverIO.

Project TemplateFeaturesGet Started
Serenity/JS with Cucumber and ProtractorCucumber.js; Protractor; TypeScript; GitHub Codespace; GitHub Actions; Local Chrome browser; Serenity BDD reportsGenerate new project
View Code
View Serenity BDD Reports
Start GitHub Codespace
Serenity/JS with Jasmine and ProtractorJasmine; Protractor; TypeScript; GitHub Codespace; GitHub Actions; Local Chrome browser; Serenity BDD reportsGenerate new project
View Code
View Serenity BDD Reports
Start GitHub Codespace
Serenity/JS with Mocha and ProtractorMocha; Protractor; TypeScript; GitHub Codespace; GitHub Actions; Local Chrome browser; Serenity BDD reportsGenerate new project
View Code
View Serenity BDD Reports
Start GitHub Codespace

Web Component Testing

Serenity/JS integrates with Playwright Component Test runner, allowing to test React, Svelte, Vue and Solid components.

To use Serenity/JS with Playwright Component Test runner, start with one of the below templates:

Project TemplateFeaturesGet Started
Serenity/JS with Playwright Component Test runner for ReactPlaywright Component Testing; TypeScript; GitHub Codespace; GitHub Actions; Local Chrome, Firefox, and Webkit browser engines; Playwright Test reports; Serenity BDD reportsGenerate new project
View Code
View Serenity BDD Reports
View Playwright Test Reports
Start GitHub Codespace
Serenity/JS with Playwright Component Test runner for Lit and Web ComponentsPlaywright Component Testing; TypeScript; GitHub Codespace; GitHub Actions; Local Chrome, Firefox, and Webkit browser engines; Playwright Test reports; Serenity BDD reportsGenerate new project
View Code
View Serenity BDD Reports
View Playwright Test Reports
Start GitHub Codespace

REST/HTTP API Testing

Serenity/JS dedicated REST API testing module, allows you to interact with REST and HTTP-based web services either as part of web or API test scenarios.

To use Serenity/JS to interact with REST and HTTP-based web services, start with one of the below templates:

Project TemplateFeaturesGet Started
Serenity/JS with CucumberREST API testing setup; Cucumber.js; TypeScript; GitHub Codespace; GitHub Actions; Serenity BDD reportsGenerate new project
View Code
View Serenity BDD Reports
Start GitHub Codespace
Serenity/JS with MochaREST API testing setup; Mocha; TypeScript; GitHub Codespace; GitHub Actions; Serenity BDD reportsGenerate new project
View Code
View Serenity BDD Reports
Start GitHub Codespace

Join the Serenity/JS Community!

If Serenity/JS supports your work, give it a ⭐ star on GitHub and tell your friends about the framework!

GitHub Stars

Serenity/JS is more than just a framework - it's an active community of testers, developers, and quality advocates who share your passion for excellence. Want to get involved? Here’s how:

  • Serenity/JS GitHub: Dive into the source code, contribute to the project, and collaborate with other developers.
  • Community Chat: Connect with professionals who share your interests, exchange ideas, and learn from each other.
  • Q&A Forum: Ask questions, find answers, and help others navigate Serenity/JS.
  • Stay up to date: Follow @serenity-js on LinkedIn and YouTube for the latest tutorials and updates.

LinkedIn Follow YouTube Follow GitHub Sponsors

Need another template?

Share your idea in the comments! 👇