> ## Documentation Index
> Fetch the complete documentation index at: https://devtools.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Quickstart Guide

> Get started with the Frontend Handbook and set up your development environment

## Setting Up Your Development Environment

Before diving into frontend development, you'll need to set up your environment with the right tools. This guide will help you get started quickly.

### Essential Tools for Frontend Development

<AccordionGroup>
  <Accordion icon="code-editor" title="Code Editor">
    A good code editor is essential for productive development. Here are some popular options:

    * **Visual Studio Code** - Free, powerful, and widely used with excellent extension support
    * **Sublime Text** - Fast and lightweight editor with great performance
    * **WebStorm** - Full-featured IDE specifically for web development

    We recommend starting with **Visual Studio Code** as it offers an excellent balance of features, performance, and community support.

    [Download VS Code](https://code.visualstudio.com/)
  </Accordion>

  <Accordion icon="browser" title="Web Browsers & DevTools">
    You'll need modern browsers for testing and their built-in developer tools for debugging:

    * **Chrome** - Widely used with powerful DevTools
    * **Firefox** - Excellent rendering engine with strong privacy features
    * **Edge** - Microsoft's Chromium-based browser
    * **Safari** - Important for testing on macOS/iOS

    Make sure to familiarize yourself with browser DevTools by pressing `F12` or `Ctrl+Shift+I` (Windows/Linux) or `Cmd+Option+I` (Mac) in your browser.
  </Accordion>

  <Accordion icon="git" title="Version Control with Git">
    Git is essential for tracking changes and collaborating with others:

    1. Install Git from [git-scm.com](https://git-scm.com/downloads)
    2. Set up a GitHub account at [github.com](https://github.com/)
    3. Configure Git with your credentials:

    ```bash theme={null}
    git config --global user.name "Your Name"
    git config --global user.email "your.email@example.com"
    ```

    Basic Git commands you'll use frequently:

    ```bash theme={null}
    git clone <repository-url>   # Clone a repository
    git add .                    # Stage all changes
    git commit -m "Message"      # Commit changes
    git push                     # Push to remote repository
    git pull                     # Pull latest changes
    ```
  </Accordion>

  <Accordion icon="node-js" title="Node.js and npm">
    Node.js and npm (Node Package Manager) are essential for modern frontend development:

    1. Install Node.js from [nodejs.org](https://nodejs.org/) (npm comes included)
    2. Verify installation with:

    ```bash theme={null}
    node --version
    npm --version
    ```

    npm allows you to install and manage JavaScript packages. Some basic commands:

    ```bash theme={null}
    npm init                     # Initialize a new project
    npm install <package-name>   # Install a package
    npm install -g <package>     # Install globally
    npm start                    # Run the start script
    ```
  </Accordion>
</AccordionGroup>

### First Project Setup

<Steps>
  <Step title="Create a new project folder">
    ```bash theme={null}
    mkdir my-frontend-project
    cd my-frontend-project
    ```
  </Step>

  {' '}

  <Step title="Initialize Git repository">
    `bash git init ` Create a `.gitignore` file to exclude unnecessary files:
    `node_modules/ .DS_Store .env`
  </Step>

  {' '}

  <Step title="Set up basic project structure">
    Create these essential files and folders: `index.html css/styles.css
          js/script.js images/`
  </Step>

  <Step title="Create a basic HTML template">
    Add this starter code to your `index.html`:

    ```html theme={null}
      <!DOCTYPE html>
      <html lang="en">
      <head>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <title>My Frontend Project</title>
        <link rel="stylesheet" href="css/styles.css">
      </head>
      <body>
        <h1>Hello, Frontend World!</h1>

        <script src="js/script.js"></script>
      </body>
      </html>
    ```
  </Step>
</Steps>

<AccordionGroup>
  <Accordion icon="eye" title="Preview your changes">
    Your changes will be hot-reloaded in the browser. Just refresh or navigate to the page you're editing to see updates instantly.
  </Accordion>

  <Accordion icon="rocket" title="Deploy using GitHub Pages / Vercel / Netlify">
    You can deploy your handbook using a static site hosting provider:

    * **GitHub Pages** – via GitHub Actions
    * **Vercel** – automatic deploy on push (recommended for Next.js)
    * **Netlify** – drag and drop or connect your repo

    Most setups just require pushing your code to GitHub.
  </Accordion>

  <Accordion icon="upload" title="Push your changes to GitHub">
    Commit and push your changes:

    ```bash theme={null}
    git add .
    git commit -m "Update handbook content"
    git push origin main
    ```

    Your deployment provider will detect the change and redeploy your site.
  </Accordion>
</AccordionGroup>

## Deploy your handbook

## Update your handbook

You can add new content using MDX syntax and even integrate your own custom components to enrich the learning experience.

<CardGroup>
  <Card title="Write with MDX" icon="file" href="/essentials/markdown">
    Create pages using Markdown extended with React components.
  </Card>

  <Card title="Add Code Snippets" icon="square-code" href="/essentials/code">
    Use syntax-highlighted code blocks to explain concepts clearly.
  </Card>

  <Card title="Insert Images" icon="image" href="/essentials/images">
    Include diagrams, screenshots, or illustrations to support your text.
  </Card>

  <Card title="Use Custom Components" icon="puzzle-piece" href="/essentials/reusable-snippets">
    Build reusable components like notes, tips, or callouts across pages.
  </Card>
</CardGroup>
