Skip to content

Latest commit

 

History

History
101 lines (60 loc) · 2.93 KB

getSetup.md

File metadata and controls

101 lines (60 loc) · 2.93 KB

Getting Started


Table of Contents


Requirements

  • Terminal (macOS) or Command Prompt (PC)
  • Node - Tested with node 18.20.8
  • npm
  • nvm - Recommended to use tested Node version

Instructions

  1. If you haven't already cloned the repository, do so by running the following in your command line:
git clone https://github.com/ucla/UCLA-Design-Systems.git
  1. Navigate to your local copy:
cd UCLA-Design-Systems
  1. Make sure node and npm have been installed successfully.

node -v

npm -v

  • If installed successfully, these commands should return a version number, similar to below:

    npm v10.8.2, node v18.20.8

  1. Prepare the development environment:
  • bash scripts/prepare.sh
  1. Go into the 'fractal' directory
  • cd fractal
  1. Switch to tested node version
  • In order to install node v18 on a mac with arm64(Apple Processor), you would need to use Rosseta. You can install Rosseta using the following command:
    • /usr/sbin/softwareupdate --install-rosetta --agree-to-license
    • Then run arch -x86_64 zsh and continue instructions using the next nvm command.
  • nvm install 18
  • nvm use
  1. Install Node Modules for Fractal
  • npm install
  1. Run a Fractal Build
  • npm run build
  1. Start Fractal
  • npm run start

Your local environment should be running at http://localhost:3000.


Helpful NPM Commands

Task Description
npm run build Build Fractal framework, build expanded styling and scripts for both documentation and components library, and remove string filters (used for production versioning)
npm run start Start Fractal development web server, watch for styling and script changes for both the documentation and components library, and run linters for both the documentation and components library

Conventional Commits

This project uses conventional commits, which is a requirement for the semantic release plugin installed into the repository.

The Conventional Commits specification is a lightweight convention on top of commit messages. It provides an easy set of rules for creating an explicit commit history; which makes it easier to write automated tools on top of. This convention dovetails with SemVer, by describing the features, fixes, and breaking changes made in commit messages.

You can read more about it here: conventional commits

conventional commits cheat sheet


⬅️ Go Back to Main README