# @compgen/cra

> A robust generator for generating full CRA project.

Latest version **0.4.8** (published 2021-03-30) · MIT license · 0 weekly downloads

## Install

```sh
npm install @compgen/cra
pnpm add @compgen/cra
yarn add @compgen/cra
bun add @compgen/cra
```

Provides the command `cra`.

## Health

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

Positive: has types; no vulnerabilities.

Warnings: low downloads; no esm support; pre 1.0.

Negative: abandoned; low maintenance score.

## Facts

| | |
|---|---|
| Version | 0.4.8 |
| Published | 2021-03-30 |
| First published | 2020-11-08 |
| Weekly downloads | 0 |
| License | MIT |
| TypeScript types | bundled |
| Module format | CommonJS |
| Node | >=14 |
| Dependencies | 6 |
| Unpacked size | 15.9 KB |
| Known vulnerabilities | 0 |
| Install scripts | no |
| Maintainers | michal.jarnot |

## Links

- npm: https://www.npmjs.com/package/@compgen/cra
- npm.io page: https://npm.io/package/@compgen/cra

## Dependencies (6)

- [@compgen/core](https://npm.io/package/@compgen/core.md) ^0.9.0
- [@compgen/heroku](https://npm.io/package/@compgen/heroku.md) ^0.3.10
- [@compgen/cra-min](https://npm.io/package/@compgen/cra-min.md) ^0.1.14
- [@compgen/git-hooks](https://npm.io/package/@compgen/git-hooks.md) ^0.4.7
- [@compgen/browserlist](https://npm.io/package/@compgen/browserlist.md) ^0.1.15
- [@compgen/code-quality](https://npm.io/package/@compgen/code-quality.md) ^0.3.8

## Recent versions

- 0.4.8 (latest) — 2021-03-30
- 0.4.7 — 2021-03-27
- 0.4.6 — 2021-03-27
- 0.4.5 — 2021-02-21
- 0.4.4 — 2021-02-21
- 0.4.3 — 2021-02-21
- 0.4.2 — 2021-02-21
- 0.4.1 — 2021-02-21
- 0.4.0 — 2021-02-20
- 0.3.2 — 2021-02-20
- 0.3.1 — 2021-02-20
- 0.3.0 — 2021-02-20
- 0.2.0 — 2021-02-19
- 0.1.3 — 2021-02-19
- 0.1.2 — 2021-02-19
- … 3 more at https://npm.io/package/@compgen/cra/versions

## README

# @compgen/cra

A robust generator for generating full CRA project.

#### Micro Generators Included

- [@compgen/cra-min](/packages/micro-generators/cra-min)
- [@compgen/browserlist](/packages/micro-generators/browserlist)
- [@compgen/editor-config](/packages/micro-generators/editor-config)
- [@compgen/eslint](/packages/micro-generators/eslint)
- [@compgen/stylelint](/packages/micro-generators/stylelint)
- [@compgen/prettier](/packages/micro-generators/prettier)
- [@compgen/git-hooks](/packages/micro-generators/git-hooks)
- [@compgen/heroku](/packages/micro-generators/heroku)

### CLI

I highly recommend using `npx` so that you don't have to install anything globally, and you can always get the latest version from npm.

- **optional** `--path=target_folder`

```bash
npx @compgen/cra
```

### Programmatically

You have to generate JSON schema and use `execute` function from `@compgen/core`:

```ts
// src/index.ts
import { execute, askProjectName, askYesNo } from '@compgen/core'
import { createSchema } from '@compgen/cra'

const generate = async () => {
  const { projectFolder } = await askProjectName()
  const isRouter = await askYesNo('Do you want to configure router?')
  const isHeroku = await askYesNo(
    'Do you want to generate Heroku configuration?'
  )

  const schema = createSchema({ projectFolder, isHeroku, isRouter })

  await execute(schema, projectFolder)
}

generate()
```

Now all you have to do is run:

```
ts-node src/index.ts
```

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