Skip to main content

Prerequisites

Before you begin, ensure you have the following installed on your system:
1

Install Node.js

Download and install Node.js (v18 or higher) from nodejs.org
2

Install Git

Install Git for version control from git-scm.com
3

Clone the Repository

Clone the project repository to your local machine
4

Install Dependencies

Install project dependencies using your preferred package manager

IDE Configuration

Visual Studio Code

VS Code is the recommended IDE for this project. Install the following extensions:

Required Extensions

  • ESLint - Integrates ESLint JavaScript linting
  • Prettier - Code formatter
  • TypeScript and JavaScript Language Features - Enhanced TypeScript support
  • Tailwind CSS IntelliSense - Autocomplete for Tailwind classes
  • Auto Rename Tag - Automatically rename paired HTML/JSX tags
  • GitLens - Enhanced Git capabilities
  • Error Lens - Inline error highlighting
  • Path Intellisense - Autocomplete for file paths

Workspace Settings

Create a .vscode/settings.json file in your project root:
Commit the .vscode folder to your repository to ensure consistent settings across your team.

Environment Variables

Set up your environment variables for local development:
1

Copy Environment Template

2

Configure Variables

Edit .env.local with your local configuration:
Never commit .env.local or any file containing secrets to version control. Ensure these files are listed in .gitignore.

Development Tools

Package Manager

This project uses npm as the default package manager. Use the same package manager across your team to avoid lock file conflicts.

Code Quality Tools

ESLint

Linting configuration is defined in .eslintrc.js:

Prettier

Formatting configuration in .prettierrc:

Husky & Lint-Staged

Pre-commit hooks ensure code quality:

Browser DevTools

React Developer Tools

Install the React DevTools browser extension for debugging React components:

Additional DevTools

For projects using Redux, install the Redux DevTools extension to inspect state changes and time-travel debug.
If using TanStack Query (React Query), the devtools are included:

Starting Development Server

Once your environment is set up, start the development server:
The application will be available at http://localhost:3000.
The development server includes hot module replacement (HMR), so changes are reflected immediately without a full page reload.

Troubleshooting

Port Already in Use

If port 3000 is already in use:

Node Modules Issues

If you encounter dependency issues:

TypeScript Errors

If TypeScript is not recognizing types: