Skip to content

dagda1/cuttingedge

Repository files navigation

Cutting Monorepo

Prerequisites

  1. Install Node.js from http://nodejs.org or from your favorite package manager. At least version 9.3 is required.

This is the main monorepo README. The monorepo contains the following packages:

  1. @cutting/devtools - Common webpack, vitest and npm scripts
  2. @cutting/util - Any common functionality applicable to all packages can be found here.
  3. @cutting/use-shortcuts - Effortlessly create keyboard shortcust with this react hook.
  4. @cutting/component-library - Common react components that can be shared among all projects. This ensures consistency in both styling and functionality. The atomic design methodology will be used to add a logical grouping to the component structure.
  5. @cutting/website - Frontend main site code for the cutting website

Each subpackage above can be deployed or imported as an npm package in isolation.

All packages have tests and most part from util have their own viewable demo webserver to display the current functionality.

Installation instructions

pnpm is the package manager used throughout the monorepo.

To check everything is working locally, run the following commands:

pnpm install
pnpm run start

When these commands have finished open a browser at http://localhost:3000

Run tests

A combination of the test runner vitest and react-testing-library are used to unit test the code.

You will need to have perviously ran pnpm install before running:

pnpm test

This will run unit tests in every subpackage of the monorepo. Each subpackage has its own suite of tests that can be executed with the same command when executed in the subdirectory.