Documentation Tool 1:Storybook(Frontend) - nighttourist/Batch-Management-System GitHub Wiki

Storybook Documentation

Author

Samia Alam

Introduction

What is Storybook?

Storybook is a frontend workshop for building UI components and pages in isolation. It allows developers to create, view, and test UI components independently of the main app, enabling better management of UI states and edge cases. It is widely used for UI development, testing, and documentation. Storybook is open source and free, used by thousands of teams to streamline their UI workflow.

For official documentation, visit:
Storybook Documentation

Installation

  1. How to Install Storybook

For NPM

npx storybook@latest init

For PNPM

pnpm dlx storybook@latest init

For YARN

yarn dlx storybook@latest init

After installation the folder like below(example):

image image

Basic Information

For a basic introduction to Storybook, you can follow this YouTube tutorial.

Creating Documentation with Storybook

To learn how to create documentation using Storybook, check out this video tutorial.

Example

Let's walk through an example of creating a component and its Storybook story.

Step 1: Create the Component

Create a Logo component in src/components/Logo.jsx:

image

Step 2: Add Storybook

Create the Storybook file for the LOgo component in src/components/Logo.stories.jsx: image

Output:

image

Advantages and Disadvantages of Storybook

Advantages

  • Isolated Development: Develop and test UI components in isolation without needing to run the entire application.
  • Documentation: Automatically generates a UI component library for documentation.
  • Collaboration: Makes it easier for developers and designers to collaborate on UI design.
  • Testing: Helps in visual and interaction testing of components.
  • Cross-browser Testing: Facilitates checking components in different browsers with ease.

Disadvantages

  • Setup Time: Initial setup and configuration may take time, especially for large projects.
  • Maintenance: Requires regular updates to keep the Storybook environment in sync with your codebase.
  • Resource-Intensive: Running Storybook in development mode can consume a significant amount of memory and CPU.