Storybook
minuta czytania
Storybook to narzędzie, które pozwala na tworzenie i testowanie komponentów aplikacji w izolacji od reszty aplikacji. Dzięki niemu, developerzy mogą tworzyć, testować i prezentować komponenty w prosty sposób, co pozwala na szybsze i łatwiejsze tworzenie aplikacji.
Podczas pisania aplikacji ogromne znaczenie ma projektowanie oraz testowanie komponentów aplikacji. Niestety przeglądanie komponentów osobno może być trudne, lecz z pomocą przychodzi nam Storybook, dzięki niemu jesteśmy w stanie testować złożone działania i upewnić się, że napisane przez nas komponenty zawsze działają zgodnie z oczekiwaniami.
Czym jest Storybook?
Storybook jest narzędziem do tworzenia komponentów interfejsu aplikacji. Umożliwia przeglądanie komponentów, przeglądanie różnych stanów każdego komponentu oraz testowanie komponentów. Storybook sprawia, że tworzenie komponentów jest szybsze i łatwiejsze dzięki izolacji komponentów. Jesteśmy w stanie stworzyć całe interfejsy użytkownika bez konieczności poruszania się po aplikacji, a także pomaga w dokumentowaniu komponentów do ponownego użycia, a także daje możliwość testowania je wizualnie, aby zapobiec błędom. Storybook świetnie spisuje się wraz z biblioteką React, lecz także wspiera on takie technologie jak: Vue, Angular, Web Components, Ember, Svelte, Preact.
Pierwsze kroki
Po instalacji Storybooka, możemy stworzyć swoje pierwsze story. Story to funkcja, która opisuje sposób renderowania danego komponentu i jest zapisana w formacie Component Story Format (CSF), a pliki kończą się na .stories.js lub .stories.ts. Poniższy kod przedstawia stworzenie story, który będzie przechowywać komponent z przyciskiem.
import React from 'react';
import { Button } from './Button';
export default {
title: 'Button',
component: Button,
};
export const Primary = () => <Button primary>Button</Button>;
Powyższe Story można ulepszyć o dodatkową koncepcję “args”, która pozwala na dynamicznym zmienianiu argumentów komponentu, czyli będziemy wstanie naszemu przyciskowi np. zmienić dynamicznie kolor, rozmiar, tekst.
import React from 'react';
import { Button } from './Button';
export default {
title: 'Button',
component: Button,
};
const Template = (args) => <Button {...args} />;
export const Primary = Template.bind({});
Primary.args = {
primary: true,
label: 'Button',
};
Powiązane artykuły
Storyblok - co to jest?
12 lip 2022
Storyblok to narzędzie do tworzenia stron internetowych, które pozwala na łatwe i szybkie tworzenie witryn opartych na systemie headless CMS. Jest to platforma, która pozwala na łatwe tworzenie i zarządzanie treścią, a także na dostarczanie jej do różnych kanałów i urządzeń.

Jam Stack – przełom czy dobrze znana technologia?
17 lut 2022
Jam Stack to technologia, która polega na budowaniu aplikacji internetowych za pomocą statycznie generowanych stron, które są hostowane na serwerach CDN. Jest coraz bardziej popularny wśród programistów, ponieważ oferuje wiele korzyści, takich jak szybkość, niskie koszty utrzymania i bezpieczeństwo.
WebWave, polski system CMS
1 lut 2022
WebWave to nowoczesny edytor stron internetowych, który umożliwia tworzenie i edycję stron bez konieczności posiadania zaawansowanej wiedzy technicznej. Dzięki intuicyjnemu interfejsowi oraz bogatej bibliotece gotowych szablonów, każdy może stworzyć profesjonalną stronę internetową bez potrzeby korzystania z pomocy specjalisty.
Optymalizacja obrazów Dockera
24 lip 2023
Obrazy dla kontenerów Dockera mogą być naprawdę ciężkie. W internecie można znaleźć przykłady image'ów ważących nawet po 5 lub więcej gigabajtów. Jest to problem, zarówno dla developerów, używających Dockera do lokalnego developmentu, jak i dla osób odpowiedzialnych za setup aplikacji w środowiskach testowych i produkcyjnych. W artykule zostanie poruszony temat zmniejszania rozmiaru obrazów Dockera.
InVision Studio - niezbędne narzędzie dla każdego projektanta UI/UX
25 wrz 2023
InVision Studio to narzędzie, którego każdy projektant UI/UX powinien mieć w swoim arsenale. Pomaga w tworzeniu responsywnych interfejsów, prototypów i animacji, umożliwiając szybką i efektywną pracę. Doceniany za innowacyjność, łatwość obsługi oraz szeroki zakres funkcji, InVision Studio silnie zaznacza swoją obecność w świecie projektowania UI/UX.
Efektywne prowadzenie webinarów w sektorze IT
25 wrz 2023
W dobie cyfryzacji, webinar staje się jednym z najważniejszych narzędzi w sektorze IT. Powodzenie webinaru zależy od wielu czynników, począwszy od przygotowania, a skończywszy na umiejętności utrzymania zaangażowania uczestników. Zatem cyfrowym szlakiem: poradnik efektywnego prowadzenia, to przewodnik, który pomoże przetrwać w cyfrowym świecie webinarów IT. Dowiedz się więcej, jak skutecznie zorganizować i przeprowadzić webinar, a swoje zdobycze wiedzy zastosować w praktyce.
Zobacz wszystkie artykuły