qqqzhch / web3projectstemplate

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Web3 Projects Boilerplate

Commitzen friendly Conventional Commits

Getting started

This is a monorepo repository using yarn workspaces, Commitzen and Conventional Commits to maintain and manage component versions and for documentation, we use Storybook.

πŸ’₯ Features

  • ⚑️ Vite 2.0 - (React 18)
  • πŸ“¦ Yarn Workspaces
  • ✨ Host Multiple CRA Apps, Vite apps, Component Libraries & Storybooks in one monorepo
  • πŸ”₯ Hot Reload all Apps, Components & Storybooks
  • πŸ‘¨β€πŸ”¬ Test all workspaces with Eslint & Jest using one command
  • πŸ”₯ tailwincss
  • πŸ”₯ zustand as store
  • πŸ”₯ with mock api and proxy api
  • πŸ”₯ with Examples of unit tests of react hook and store
  • ✨ headlessu

🌐 Samples

Spotifood

Code: https://github.com/emunhoz/spotifood

Find movies

Code: https://github.com/emunhoz/find-movies

🌐 Links

Storybook live demo:

Storybook

Vite App live demo:

Backend server:

⚠️ Requirements

  • Node > v18
  • NPM > v8

In order to use semantic release with github actions, you need to add a new secrets in your github repository. This is needed in order for Semantic Release to be able to publish a new release for the Github repository.

Create a token for Github. You need to give the token repo scope permissions.

Check out this file: https://github.com/emunhoz/monorepo-boilerplate/blob/main/.github/workflows/release.yml#L32

You need to change this value with you new secrets: GH_MONOREPO_TOKEN

πŸš€ Quick start

In the root folder run following commands (all the below commands need to run on root folder):

Install all dependecies with:

  yarn

Run the front end application @monorepo-boilerplate/web and back end server application @monorepo-boilerplate/server :

  yarn start

πŸ—‚ Monorepo structure

Package Description
@monorepo-boilerplate/design-tokens Design tokens (colors, typography, attributes...)
@common/** Common functions, images, lints (eslint, stylelint, prettier) and other generics setup
@monorepo-boilerplate/ui-components React library components with stories
@monorepo-boilerplate/web Front end application create with vite app

🚨 Code standard

⌨️ Commands

Command Description
yarn Install all dependencies
yarn start Run frontend/backend server
yarn test:ci Run all tests
yarn storybook Run storybook doc components
yarn watch:tokens Hot reload design-tokens package
yarn watch:components Hot reload ui-components package
yarn build-app Build of front app(@monorepo-boilerplate/web) and generate a directory with all assets in the following path: packages/web/build
yarn build-storybook Build of storybook with components(@monorepo-boilerplate/ui-components) and generate a directory with all assets in the following path: packages/ui-components/storybook-static

About

License:MIT License


Languages

Language:TypeScript 89.7%Language:JavaScript 9.5%Language:HTML 0.6%Language:CSS 0.2%