# @breakaway/documentation-framework

> A framework to build documentation for PatternFly.

Latest version **1.0.12** (published 2022-06-28) · MIT license · 0 weekly downloads

## Install

```sh
npm install @breakaway/documentation-framework
pnpm add @breakaway/documentation-framework
yarn add @breakaway/documentation-framework
bun add @breakaway/documentation-framework
```

Provides the command `pf-docs-framework`.

## Health

**Score 15/100 (F)** — status: abandoned.

Positive: no vulnerabilities.

Warnings: low downloads; no types; no esm support.

Negative: abandoned; low maintenance score.

## Facts

| | |
|---|---|
| Version | 1.0.12 |
| Published | 2022-06-28 |
| First published | 2022-06-23 |
| Weekly downloads | 0 |
| License | MIT |
| TypeScript types | none |
| Module format | CommonJS |
| Dependencies | 67 |
| Unpacked size | 1.3 MB |
| Known vulnerabilities | 0 (+38 in 8 direct dependencies) |
| Install scripts | no |
| Author | Red Hat |
| Maintainers | dgutride, schulj12 |

## Links

- npm: https://www.npmjs.com/package/@breakaway/documentation-framework
- npm.io page: https://npm.io/package/@breakaway/documentation-framework

## Dependencies (67)

- [glob](https://npm.io/package/glob.md) 8.0.3
- [detab](https://npm.io/package/detab.md) 2.0.3
- [mdurl](https://npm.io/package/mdurl.md) 1.0.1
- [sharp](https://npm.io/package/sharp.md) 0.30.6
- [express](https://npm.io/package/express.md) 4.18.1
- [js-yaml](https://npm.io/package/js-yaml.md) 3.14.0
- [postcss](https://npm.io/package/postcss.md) 7.0.32
- [unified](https://npm.io/package/unified.md) 9.1.0
- [webpack](https://npm.io/package/webpack.md) 4.44.1
- [chokidar](https://npm.io/package/chokidar.md) 3.5.3
- [fs-extra](https://npm.io/package/fs-extra.md) 9.0.1
- [to-vfile](https://npm.io/package/to-vfile.md) 6.1.0
- [commander](https://npm.io/package/commander.md) 4.1.1
- [lodash-es](https://npm.io/package/lodash-es.md) 4.17.15
- [puppeteer](https://npm.io/package/puppeteer.md) 14.3.0
- [css-loader](https://npm.io/package/css-loader.md) 4.3.0
- [file-saver](https://npm.io/package/file-saver.md) 1.3.8
- [handlebars](https://npm.io/package/handlebars.md) 4.7.7
- [remark-mdx](https://npm.io/package/remark-mdx.md) 2.0.0-next.8
- [typescript](https://npm.io/package/typescript.md) 4.3.5
- [url-loader](https://npm.io/package/url-loader.md) 4.1.0
- [@babel/core](https://npm.io/package/@babel/core.md) 7.18.2
- [codesandbox](https://npm.io/package/codesandbox.md) 2.2.0
- [file-loader](https://npm.io/package/file-loader.md) 6.1.0
- [null-loader](https://npm.io/package/null-loader.md) 4.0.0
- [webpack-cli](https://npm.io/package/webpack-cli.md) 3.3.12
- [@mdx-js/util](https://npm.io/package/@mdx-js/util.md) 1.6.16
- [autoprefixer](https://npm.io/package/autoprefixer.md) 9.8.6
- [babel-loader](https://npm.io/package/babel-loader.md) 8.2.5
- [react-docgen](https://npm.io/package/react-docgen.md) 5.3.1
- [remark-mdxjs](https://npm.io/package/remark-mdxjs.md) 2.0.0-next.8
- [remark-parse](https://npm.io/package/remark-parse.md) 8.0.3
- [@reach/router](https://npm.io/package/@reach/router.md) 1.3.4
- [camelcase-css](https://npm.io/package/camelcase-css.md) 2.0.1
- [monaco-editor](https://npm.io/package/monaco-editor.md) 0.21.3
- [webpack-merge](https://npm.io/package/webpack-merge.md) 5.8.0
- [html-formatter](https://npm.io/package/html-formatter.md) 0.1.9
- [parse-entities](https://npm.io/package/parse-entities.md) 2.0.0
- [postcss-loader](https://npm.io/package/postcss-loader.md) 4.2.0
- [vfile-reporter](https://npm.io/package/vfile-reporter.md) 6.0.1
- [style-to-object](https://npm.io/package/style-to-object.md) 0.3.0
- [remark-footnotes](https://npm.io/package/remark-footnotes.md) 1.0.0
- [unist-util-visit](https://npm.io/package/unist-util-visit.md) 2.0.3
- [@babel/preset-env](https://npm.io/package/@babel/preset-env.md) 7.18.2
- [hast-util-to-text](https://npm.io/package/hast-util-to-text.md) 2.0.0
- [puppeteer-cluster](https://npm.io/package/puppeteer-cluster.md) 0.23.0
- [react-ssr-prepass](https://npm.io/package/react-ssr-prepass.md) 1.2.1
- [responsive-loader](https://npm.io/package/responsive-loader.md) 2.1.1
- [unist-util-remove](https://npm.io/package/unist-util-remove.md) 2.0.0
- [mdast-util-to-hast](https://npm.io/package/mdast-util-to-hast.md) 9.1.1
- [remark-frontmatter](https://npm.io/package/remark-frontmatter.md) 2.0.0
- [webpack-dev-server](https://npm.io/package/webpack-dev-server.md) 3.11.0
- [copy-webpack-plugin](https://npm.io/package/copy-webpack-plugin.md) 6.1.0
- [hast-to-hyperscript](https://npm.io/package/hast-to-hyperscript.md) 9.0.0
- [html-webpack-plugin](https://npm.io/package/html-webpack-plugin.md) 4.4.1
- [react-monaco-editor](https://npm.io/package/react-monaco-editor.md) 0.48.0
- [clean-webpack-plugin](https://npm.io/package/clean-webpack-plugin.md) 3.0.0
- [@patternfly/ast-helpers](https://npm.io/package/@patternfly/ast-helpers.md) ^0.4.57
- [mini-css-extract-plugin](https://npm.io/package/mini-css-extract-plugin.md) 1.3.9
- [webpack-bundle-analyzer](https://npm.io/package/webpack-bundle-analyzer.md) 3.8.0
- [remark-squeeze-paragraphs](https://npm.io/package/remark-squeeze-paragraphs.md) 4.0.0
- [monaco-editor-webpack-plugin](https://npm.io/package/monaco-editor-webpack-plugin.md) 2.1.0
- [@babel/plugin-transform-react-jsx](https://npm.io/package/@babel/plugin-transform-react-jsx.md) 7.17.12
- [@babel/plugin-proposal-private-methods](https://npm.io/package/@babel/plugin-proposal-private-methods.md) 7.17.12
- [@babel/plugin-proposal-class-properties](https://npm.io/package/@babel/plugin-proposal-class-properties.md) 7.17.12
- [@babel/plugin-proposal-private-property-in-object](https://npm.io/package/@babel/plugin-proposal-private-property-in-object.md) 7.17.12
- [@babel/plugin-proposal-nullish-coalescing-operator](https://npm.io/package/@babel/plugin-proposal-nullish-coalescing-operator.md) 7.17.12

## Recent versions

- 1.0.12 (latest) — 2022-06-28
- 1.0.11 — 2022-06-27
- 1.0.10 — 2022-06-24
- 1.0.9 — 2022-06-24
- 1.0.8 — 2022-06-24
- 1.0.7 — 2022-06-23
- 1.0.6 — 2022-06-23
- 1.0.5 — 2022-06-23
- 1.0.4 — 2022-06-23
- 1.0.3 — 2022-06-23
- 1.0.2 — 2022-06-23
- 1.0.1 — 2022-06-23
- 1.0.0 — 2022-06-23

## README

# @breakaway/documentation-framework

## Install

We publish this theme [on npm.](https://www.npmjs.com/package/@breakaway/documentation-framework) Install it as a devDependency with your package manager.

`npm i --save-dev @breakaway/documentation-framework`

`yarn add -D @breakaway/documentation-framework`

## First time setup

### Puppeteer

Puppeteer is used to create screenshots, it requires chromium to be installed on your machine

- install chromium using brew:

  `brew install chromium`
- check the chromium path, should point to /opt/homebrew/bin/chromium:

  `which chromium`
- export out the path:

  export PUPPETEER_SKIP_CHROMIUM_DOWNLOAD=true

  export PUPPETEER_EXECUTABLE_PATH=\`which chromium\`

- So you don't have to retype this in the future, save to your shell rc file like .bashrc or .zshrc:

  echo 'export PUPPETEER_SKIP_CHROMIUM_DOWNLOAD=true' >> ~/.zshrc

  echo 'export PUPPETEER_EXECUTABLE_PATH=\`which chromium\`' >> ~/.zshrc 

### Init documentation project

To get started, you can scaffold out a sample extension docs setup:

`npx pf-docs-framework init --name "My extension"`

If you also want to add relevant script targets to package.json, pass in `--scripts` as well:

`npx pf-docs-framework init --name "My extension" --scripts`

## Usage

For all CLI options, run `npx pf-docs-framework --help`

For individual CLI commands, you can also display more information by running `npx pf-docs-framework <COMMAND> --help`

### Develop docs

`yarn docs:develop`

or

`npx pf-docs-framework start`

### Build docs

`yarn docs:build`

or

`npx pf-docs-framework build all --output public`

> NOTE: If you have `sideEffects: false` in your package.json, that will prevent the CSS from loading in the documentation production build. Set it to true or remove it to enable the CSS from being loaded.

### Generate screenshots

You can generate screenshots against development or production builds.

- Development:

  Terminal 1:

  `yarn docs:develop` or `npx pf-docs-framework start` (Take note of the port it started on, you can modify it in patternfly-docs.config)

  Terminal 2:

  `yarn docs:screenshots` or `npx pf-docs-framework screenshots --urlPrefix http://localhost:<PORT>`

- Production:

  Terminal 1:
  
  - `yarn docs:build` or `npx pf-docs-framework build all --output public`
  - `yarn docs:serve` or `npx pf-docs-framework serve public --port 5000`

  Terminal 2:

  `yarn docs:screenshots` or `npx pf-docs-framework screenshots --urlPrefix http://localhost:5000`

---
_Source: https://npm.io/package/@breakaway/documentation-framework · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
