- Clone the repository
- Make sure you have Node >= v16.14 install on your system.
- Check if you have
yarn
installed on your system. If not, install it. - Run
yarn
in the root folder from your terminal. This will install all the dependencies. - To start the development server, run
yarn dev
. The server starts onhttp://localhost:3000
.
Install the following extensions:
- IntelliCode by Microsoft
- JavaScript and TypeScript Nightly by Microsoft
- Path Intellisense by Christian Kohler
- Prettier by Prettier
- Tailwind CSS Intellisense by Tailwind Labs
Optional extensions (good to have):
- GitLens by GitKraken
- Always create a new branch when working on your task.
- The branch must be created from the
dev
branch only (unless it is a hotfix). Therefore, always checkout todev
and do agit pull
before doing agit checkout -b
. - Branch Naming Rules:
feature/S01-03-task
for a feature development task where "S01-03" is the name of the ticket.bugfix/S01-03-bug
for a bug fix task.hotfix/S01-03-task
for a hot fix. Note: A hotfix branch is created from main branch and PR is made to both main and dev.
- Create your PR to the
dev
branch only. - Wait for atleast two code reviewers to approve your PR before merging your branch to
dev
. - Delete your branch from remote if you are done working on it.
- Contact the technical lead if there are conflicts in your branch.
- Create a component as a separate file (named using PascalCase) with a
.tsx
extension. - If you have a component that uses dot notation to extend its variants use a folder.
- Export your component from within the file and also from
index.ts
present in thecomponents
directory. Make sure exports are sorted.
- unique class (if you created a class for a component like card put it first)
- position (if its relative or absolute) at first glance you’ll immediately know if the element doesn't abide by the rules.
- size (width, height)
- display (flex block hidden)
- fonts
- colors (text or bg colors)
- borders
- margins, paddings and gaps
- absolute positioning (top, left…z indexes)