{"repo":"moishinetzer/PBandJ","free":true,"listed":false,"github":"https://github.com/moishinetzer/PBandJ","clone":"git clone https://github.com/moishinetzer/PBandJ.git","description":"Zero-Config Reusable Component Framework for React 🥜💜","language":"MDX","stars":111,"topics":["library","npm","package","react","reactjs","storybook","typescript","design-system","styleguide","zero-config"],"license":"MIT","category":"ui-components","readme_excerpt":"The Zero-Config Reusable Component Framework For React --- Introduction PBandJ is an all-in-one tool to quickly create and publish a high-quality component library, taking care of tedious setup and ensuring best practices. Publish your library to be reused across projects or shared with others! PBandJ works just as well for publishing vanilla TypeScript libraries too! What's Inside - ⚛️ React, with TypeScript by default - 📦 Tsup for building and bundling - 🤖 GitHub Actions for publishing to npm and testing - 📕 Storybook v7 running on Vite for instant HMR - ⚡ Vite playground dev server - 🦋 Changesets for versioning - 🧪 Vitest for testing - 🕵️‍♂️ Eslint for linting - 💅 Prettier for formatting Getting Started To get started run the following: This will run you through the CLI to get your project set up with all the tools you need to get started! --- 🚀 Publishing To publish your library to npm, you need to follow the steps below. 1. Generate a Personal Access Token To publish your library to npm, you need to generate a personal access token. This is a token that is used to authenticate you when publishing to npm. You can generate one [here][npm-token]. If your account requires 2FA, you will need to generate an Automation token, otherwise, a Publish token will suffice. 2. Add the Token to GitHub Secrets Once you have generated your token, you need to add it to your GitHub repository as a secret. This is so that the GitHub Action can use it to publish your library to npm. Y","default_branch":null,"files":null,"tree":[],"storefront":"/r/moishinetzer","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/moishinetzer/PBandJ/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}