@faisalrmdhn08/allin-cli
Version:
A modern full-stack CLI tool based on Typescript designed to accelerate your app development process — setup your entire stack in one seamless command.
202 lines (149 loc) • 7.94 kB
Markdown
# Allin CLI



A modern, full-stack CLI tool built with TypeScript that scaffolds your entire
stack—backend, frontend or both—in one seamless command.
### Supported Platforms:



### Supported Templates :












## Table of Contents
- [Prerequisites](#prerequisites)
- [Installation](#installation)
- [Usage](#usage)
- [Commands](#commands)
- [Options](#options)
- [Examples](#examples)
- [Creator & Collaboration](#creator--collaboration)
- [License](#license)
## Prerequisites
Before using Allin CLI, ensure you have:
- **Node.js** v22.16.0 (LTS) or later
- **npm** v10.9.2 or later
- **pnpm** (optional, if you use `--pm pnpm`)
- **git** (optional, if you use `--git`)
You can verify your versions with:
```bash
node --version # should output v22.16.0 or higher
npm --version # should output 10.9.2 or higher
```
## Installation
#### npm:
```bash
npm install -g @faisalrmdhn08/allin-cli
```
#### yarn:
```bash
yarn global add @faisalrmdhn08/allin-cli
```
#### pnpm:
```bash
pnpm add -g @faisalrmdhn08/allin-cli
```
#### bun:
```bash
bun add -g @faisalrmdhn08/allin-cli
```
## Usage
#### Start creating new project:
```bash
allin create
```
#### Show help:
```bash
allin --help
```
#### Show version:
```bash
allin --version
```
## Commands
### create
Scaffold a new project from templates.
```bash
allin create [name] [directory] [type] [options]
```
- **Arguments**:
- `[name]`: Specify the project name.
- `[directory]`: Target directory for the project.
- `[type]`: Type of project (frontend, backend, or fullstack).
- **Summary**: Action to create a new project.
- **Description**: Create a new frontend, backend, or full-stack project with
your choice of frameworks.
## Options
| Flag | Description | Default |
| ------------------------------------- | -------------------------------------------------------------------- | ------------------------- |
| `-n, --name <name>` | Specify the project name to use for the initial setup. | — |
| `-d, --dir <dir>` | Destination folder for the generated project. | Current working directory |
| `-f, --force` | Overwrite the target directory if it already exists. | `false` |
| `--au, --author <author>` | Set the author name to include in the project metadata. | — |
| `--desc, --description <description>` | Provide a short description for the project. | — |
| `--ver, --version <version>` | Set the version of the project. | — |
| `--backend <backend>` | Select the backend framework to use for the project. | — |
| `--frontend <frontend>` | Select the frontend framework to use for the project. | — |
| `--pm, --package-manager <pm>` | Choose the package manager (`npm`, `pnpm`, `bun`, `yarn`). | `npm` |
| `--li, --license <license>` | Add a LICENSE file to the project. | — |
| `--readme` | Add a README file to the project. | `false` |
| `--ts, --typescript` | Initialize the project with TypeScript configuration and typings. | `false` |
| `--dk, --docker` | Include Docker configuration files for containerized setup. | `false` |
| `--git` | Automatically initialize a Git repository and make the first commit. | `false` |
| `-h, --help` | Display help for a specific command. | — |
| `-v, --version` | Display the CLI version and exit. |
## Examples
Create a new project in my-app with all features:
```bash
allin create -d /home/my-app --name=test-project --backend=express --author "Faisal" --description "My project" --li=mit --git --ts --dk -f
```
Create in the current directory without extras:
```bash
allin create
```
### Framework Options (`--backend`, `--frontend`)
| Framework | Value |
| ---------- | --------- |
| Express.js | `express` |
| Koa.js | `koa` |
| NestJS | `nest` |
| Fastify | `fastify` |
| Next.js | `next` |
| Vue.js | `vue` |
| Svelte | `svelte` |
| Astro.js | `astro` |
| SolidJS | `solid` |
| VanillaJS | `vanilla` |
### License Options (`--li`, `--license`)
| License | Value |
| -------------------------------------- | -------------- |
| Apache 2.0 License | `apache-2` |
| BSD 2-Clause License | `bsd-2-clause` |
| BSD 3-Clause License | `bsd-3-clause` |
| GNU General Public License v3.0 | `gpl-3.0` |
| ISC License | `isc` |
| GNU Lesser General Public License v3.0 | `lgpl-3.0` |
| MIT License | `mit` |
| Unlicense | `unlicense` |
## Creator & Collaboration
**Creator**: Faisal Ramadhan
**Email**: [faisalramadhan1299@gmail.com](mailto:faisalramadhan1299@gmail.com)
**GitHub**:
[https://github.com/Kolong-Meja/allin-cli](https://github.com/Kolong-Meja/allin-cli)
If you’d like to contribute, report an issue, or suggest a feature, please visit
the GitHub repository and open an issue or pull request. Collaboration is very
welcome! 🚀
## License
This project is licensed under the MIT License. See the LICENSE file for full
details. [MIT](https://opensource.org/license/mit)