Skip to content

Latest commit

 

History

History
128 lines (88 loc) · 5.8 KB

new-snippets.md

File metadata and controls

128 lines (88 loc) · 5.8 KB
title
Code snippets contributions

Add or update the code snippets in the documentation. This page outlines how the code snippets are structured.

Documented frameworks

Storybook maintains code snippets for a variety of frameworks. We try to keep them up to date as framework APIs evolve. But it's tricky to keep track of every API change in every framework.

We welcome community contributions to the code snippets. Here's a matrix of the frameworks we have snippets for. Help us add snippets for your favorite framework.

React Vue Angular Web Components Svelte Ember HTML Preact
(See below)
💡 The Web Components snippets are present but not fully documented. If you're willing to help, submit a pull request.

Setup

Assuming you've already followed the local environment guide, the first thing you need to do is create a branch on your local Storybook monorepo by running the following command:

git checkout -b code-snippets-for-framework

Before adding your snippets, open the docs folder with your editor of choice. Get familiarized with the documentation, including how the snippets are organized and their contents.

Add your first snippet

Now that you're familiar with how the documentation is structured, it's time to add the code snippets. First, go to the docs/snippets/ folder and create a new directory for your framework of choice (e.g., ember).

Browse the documentation and look for the code snippets you're willing to contribute. For example, on the setup page, you should see something similar to:

// /docs/get-started/setup.md

<!-- prettier-ignore-start -->

<CodeSnippets
  paths={[
    'react/your-component.js.mdx',
    'react/your-component.ts.mdx',
    'angular/your-component.ts.mdx',
    'vue/your-component.2.js.mdx',
    'vue/your-component.3.js.mdx',
    'svelte/your-component.js.mdx',
    'svelte/your-component.native-format.mdx',
    'web-components/your-component.js.mdx',
  ]}
/>

<!-- prettier-ignore-end -->

Create the file ember/your-component.js.mdx, similar to the other frameworks, and reference it.

// /docs/get-started/setup.md

<!-- prettier-ignore-start -->

<CodeSnippets
  paths={[
    'react/your-component.js.mdx',
    'react/your-component.ts.mdx',
    'angular/your-component.ts.mdx',
    'vue/your-component.2.js.mdx',
    'vue/your-component.3.js.mdx',
    'svelte/your-component.js.mdx',
    'svelte/your-component.native-format.mdx',
    'web-components/your-component.js.mdx',
    'ember/your-component.js.mdx', //👈🏼 The code snippet you created.
  ]}
/>

<!-- prettier-ignore-end -->
💡 Code snippets are divided into various file extensions, if you're contributing a TypeScript file use .ts.mdx, or if you're adding MDX files use .mdx.mdx .

Go through the rest of the documentation and repeat the process.

Preview your work

Before submitting your contribution, we advise you to check your work against the Storybook website. Doing this prevents last-minute issues with the documentation and is also an excellent way for the maintainers to merge faster once you submit the pull request. However, failing to do so will lead one of the maintainers to notify you that your contribution has an issue.

Start by forking frontpage repo and cloning it locally.

git clone https://github.com/your-username/frontpage.git

Navigate to the frontpage directory and install the required dependencies with the following command:

yarn

Next, you'll need a way to get the documentation linked to the website. Execute the following:

yarn link-monorepo-docs  ./path-to-your-local-storybook

And run the Storybook website with the following command:

yarn start:skip-addons
💡 During the start process if there's an issue with the documentation, the process will stop and you'll get a notification.

Open a browser window to http://localhost:8000, click the Docs link, and select your framework from the dropdown.

Storybook docs with dropdown

Go through the documentation and check your work.

Submit your contribution

Finally, commit, push and open a pull request in the Storybook monorepo. Add a clear description of the work you've done, and one of the maintainers will guide you through the merge process.