Skip to main content

Architecture

Crusher is all-in-one solutionm it replace many tools in testing workflow. We're opinionated and building features to make e2e workflow easy.

At top level, it has 3 component

  • Crusher app - local app to record and run tests in project
  • Test executor - running test across web browser using configuration
  • Web app - to manager test, viewing report, share it in team.

Architecture

High level section

  • Frontend - React (using Nextjs), Jotai, SWR, Tailwind + emotion.
  • Backend - Express, typescript, routing controller, typedi, Prisma.
  • Test runner & Worker
  • Crusher recorder - Electron, V8, Blink, C++, react, redux. This is not completely open source.

There are also dependencies like bullmq (for job management), postgres, etc.

Codebase

We use monorepo architecture + typescript for shared type checking across packages. We strive to use typescript 100% but might often bypass it with any to develop fast.

Was this doc helpful?
yes
could be better
by