# @albertli90/al-cli

> albert li personal cli to generate boilerplate codes

Latest version **0.70.2** (published 2019-12-27) · MIT license · 0 weekly downloads

## Install

```sh
npm install @albertli90/al-cli
pnpm add @albertli90/al-cli
yarn add @albertli90/al-cli
bun add @albertli90/al-cli
```

Provides the command `al-cli`.

## Health

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

Positive: no vulnerabilities.

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

Negative: abandoned; low maintenance score.

## Facts

| | |
|---|---|
| Version | 0.70.2 |
| Published | 2019-12-27 |
| First published | 2018-10-29 |
| Weekly downloads | 0 |
| License | MIT |
| TypeScript types | none |
| Module format | CommonJS |
| Dependencies | 13 |
| Unpacked size | 459.5 KB |
| Known vulnerabilities | 0 |
| Install scripts | no |
| Author | Wentao Li |
| Maintainers | albertli90 |
| Keywords | albert, electron, react, create-react-app, typescript, babel7 |

## Links

- npm: https://www.npmjs.com/package/@albertli90/al-cli
- Repository: http://albertli90.com:9080/home-group/al-js-helper
- Homepage: https://www.albertli90.com/
- Issues: http://albertli90.com:9080/home-group/al-js-helper/issues
- npm.io page: https://npm.io/package/@albertli90/al-cli

## Dependencies (13)

- [ini](https://npm.io/package/ini.md) ^1.3.5
- [glob](https://npm.io/package/glob.md) ^7.1.3
- [meow](https://npm.io/package/meow.md) ^5.0.0
- [chalk](https://npm.io/package/chalk.md) ^2.4.1
- [figlet](https://npm.io/package/figlet.md) ^1.2.0
- [prompt](https://npm.io/package/prompt.md) ^1.0.0
- [shelljs](https://npm.io/package/shelljs.md) ^0.8.3
- [fs-extra](https://npm.io/package/fs-extra.md) ^7.0.0
- [camelcase](https://npm.io/package/camelcase.md) ^5.0.0
- [decamelize](https://npm.io/package/decamelize.md) ^2.0.0
- [handlebars](https://npm.io/package/handlebars.md) ^4.0.12
- [gradient-string](https://npm.io/package/gradient-string.md) ^1.2.0
- [handlebars-helper-import](https://npm.io/package/handlebars-helper-import.md) ^2.4.0

## Alternatives

- [@openai/codex-sdk](https://npm.io/package/@openai/codex-sdk.md) — 731.4K weekly downloads
- [babel-plugin-transform-react-jsx](https://npm.io/package/babel-plugin-transform-react-jsx.md) — 565.0K weekly downloads
- [babel-helper-remove-or-void](https://npm.io/package/babel-helper-remove-or-void.md) — 508.5K weekly downloads
- [@pnpm/store-controller-types](https://npm.io/package/@pnpm/store-controller-types.md) — 186.9K weekly downloads
- [react-native-signature-canvas](https://npm.io/package/react-native-signature-canvas.md) — 155.6K weekly downloads

## Recent versions

- 0.70.2 (latest) — 2019-12-27
- 0.60.20 — 2019-10-16
- 0.50.50 — 2019-06-05
- 0.50.40 — 2019-04-23
- 0.50.20 — 2019-04-14
- 0.40.10 — 2019-03-19
- 0.35.44 — 2019-02-07
- 0.35.40 — 2019-02-04
- 0.35.32-beta — 2019-02-04
- 0.35.21 — 2019-01-24
- 0.35.20 — 2019-01-23
- 0.35.3-beta — 2019-01-22
- 0.30.3-beta — 2018-12-17
- 0.30.2-beta — 2018-12-14
- 0.25.15 — 2018-11-21
- … 5 more at https://npm.io/package/@albertli90/al-cli/versions

## README

# al-cli - Albert's personal scaffolding client
[![version][version-badge]][CHANGELOG] [![license][license-badge]][LICENSE]

> This project is reserved for personal usage and for the [react-openfin-js](https://github.com/openfin-js-app) scaffolding 
> tool please refer [openfin-js-cli](https://www.npmjs.com/package/openfin-js-cli) instead. Currently, this client no
> longer support to generate openfin prototype projects

```text
        _ _               _             _ _ 
   __ _| | |__   ___ _ __| |_       ___| (_)
  / _` | | '_ \ / _ \ '__| __|____ / __| | |
 | (_| | | |_) |  __/ |  | ||_____| (__| | |
  \__,_|_|_.__/ \___|_|   \__|     \___|_|_|
                                            
  v0.70.2

  albert li personal cli to generate boilerplate codes

  SYNOPSIS
      $ al-cli electron-ts <app name>
      $ al-cli react-ts <app name>
      $ al-cli comp <component name>
      $ al-cli view <view component name>
      $ al-cli lyt <layout component name>
      $ al-cli help
  DESCRIPTION
      --force -f          Create the target file by force, override if any already exist
      --directory -d      Override the default path where the file created
      --verbose -v        Include comments
      --skipInstall       Skip to install node_moduels
```

## Installation
```text
    npm install @albertli90/al-cli -g
    or 
    yarn global add @albertli90/al-cli
```
## create electron react app in typescript

To generate a electron prototype project basing on create-react-app in typescript
```text
    $ al-cli electron-ts sample-electron-app
```
- -v or --verbose will log the files created
- --skipInstall will skip the node_module processes 

Once created, change into the working directory:

``` bash
    # install dependencies if skipped before
    yarn install
    
    # clean building directory for the workspace
    yarn clean

    # start dev server
    yarn start
    
    # bundle and build the js codes for production
    yarn build
    
    # run all unit test cases
    yarn test
    
    # eject all scaffolding files
    yarn eject
    
    # conditionally run all end2end test cases; this task expects bundle files to be built in advance at directory build 
    yarn e2e

    # bundle and build the js codes and package into binaries for production
    yarn package

    # bundle and build the js codes and package into binaries with directories for production
    yarn package:dir
    
    # lint all source codes
    yarn lint
    
    # prettify all source codes 
    yarn prettify
```


## create react app in typescript

To generate a front-end prototype project basing on create-react-app in typescript
```text
    $ al-cli react-ts sample-react-ts-app -v --skipInstall    
```
- -v or --verbose will log the files created
- --skipInstall will skip the node_module processes 

Once created, change into the working directory:

``` bash
    # install dependencies if skipped before
    yarn install
    
    # start dev server
    yarn start
    
    # build the applicaton for production
    yarn build
    
    # run all unit test cases
    yarn test
    
    # eject all scaffolding files
    yarn eject
    
    # conditionally run all end2end test cases; this task expects active server running, like a dev server
    yarn e2e
    
    # lint all source codes
    yarn lint
    
    # prettify all source codes 
    yarn prettify
```
 
[CHANGELOG]: ./CHANGELOG.md

[LICENSE]: ./LICENSE.md
[version-badge]: https://img.shields.io/badge/version-0.70.2-blue.svg
[license-badge]: https://img.shields.io/badge/license-MIT-blue.svg

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