Skip to content
View mbao01's full-sized avatar
🌍
Global Village
🌍
Global Village

Highlights

  • Pro

Block or report mbao01

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Please don't include any personal information such as legal names or email addresses. Maximum 100 characters, markdown supported. This note will be visible to only you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
mbao01/README.md

Hi there 👋


release deployment build Commitizen friendly

This workspace is managed by pnpm and Lerna. It follows the semantic versioning using conventional commits - all orchestrated by lerna.

Preparing for release

Ensure you are on a feature branch. You'd then need to create a pull request for the feature branch to main. After all the review ceremonies are complete you then proceed with the following steps. ⛔️⛔️⛔️ NOTE: DO NOT MERGE THE PR!!!!!

Steps to prepare release

  1. In your local repo, checkout to your feature branch
  2. Ensure your working directory is clean (stash any untracked or uncommitted changes)
  3. Prepare your changes for release by running;
pnpm release:prepare

If the command above is run successfully, you'd be automatically checkout to the release branch (i.e releases/*).

  1. On the release branch, create a PR to main by running;
pnpm release:pr

The command above will automatically create a pull request targeting main from your release branch.

After all review ceremonies on the release pull request are complete, merge to master. ⛔️⛔️⛔️ NOTE: DO UPDATE THE RELEASE BRANCH DIRECTLY. You should update your feature branch instead then star from Step 1.

Steps to publish

  1. Merge your release pull request to main once ready. This will kickstart the release workflow in the CI - which publishes changed packages to npm and creates tagged releases with notes. As a side effect, your feature branch pull request will be automatically closed.
  2. After the release workflow is successful, confirm your release and published packages on npm.

Visual Regression

Storybook test-runner is setup as the visual regression tool to capture snapshots and compare them based on set thresholds. Under the hood, @storybook/test-runner uses playwright and jest.

Prerequisite

Install playwright supported browsers

pnpx playwright install

Run tests

To run the tests, you'd need to have storybook running locally. For example

pnpm --filter @mbao01/common dev

then run the visual regression tests

pnpm --filter @mbao01/common test:visual

You could also run the tests in watch mode

pnpm --filter @mbao01/common test:visual:watch

Pinned Loading

  1. My preferred VS Code setup My preferred VS Code setup
    1
    VSCODE SETTING
    2
    
                  
    3
    ### Extensions
    4
    - [akamud.vscode-theme-onelight](https://marketplace.visualstudio.com/items?itemName=akamud.vscode-theme-onelight)
    5
    - [bceskavich.theme-dracula-at-night](https://marketplace.visualstudio.com/items?itemName=bceskavich.theme-dracula-at-night)
  2. Example on how to achieve RxJS obser... Example on how to achieve RxJS observable caching and storage in Angular 2+. Ideal for storing Http requests client side for offline usage.
    1
    import { Component, OnInit, OnDestroy } from '@angular/core';
    2
    import {Http} from "@angular/http";
    3
    import { LocalCacheService } from "./local-cache.service";
    4
    
                  
    5
    @Component({
  3. ayomidebakare.site ayomidebakare.site Public

    Ayomide Bakare

    JavaScript

  4. pdd pdd Public

    Forked from cqfn/pdd

    Puzzle Driven Development (PDD) Collector

    Ruby

  5. raft-escort raft-escort Public

    Raft consensus algorithm with escort simulator

    Python

  6. AML-DS-2021 AML-DS-2021 Public

    Forked from Gci04/AML-DS-2021

    Jupyter Notebook