create-jireh
v0.2.8
Published
Scaffold frontend apps from Jireh templates (Next.js, React+Vite, Vanilla, etc.)
Maintainers
Readme
~~create-jireh~~
⚠️ Deprecated: The
~~create-jireh~~CLI is deprecated and will no longer receive updates.
Please switch to the new CLI tool:jirehgrpUse this instead:
npx jirehgrp
A fast, interactive CLI tool for scaffolding frontend projects from the Jireh Group Templates repository.
Supports Next.js, React + Vite, Vue 3 + Vite, SvelteKit + Vite, Vanilla JS/TS, and Vanilla + Vite (JS/TS) — all preconfigured with multilingual (🇪🇹 / 🇺🇸) and theme toggle support.
Features
- Interactive CLI — Choose project name, framework, language variant, install dependencies, and initialize Git.
- Multiple Frameworks — Next.js, React (Vite), Vue 3 (Vite), SvelteKit (Vite), Vanilla JS/TS (+ Vite).
- Multilingual Ready — Amharic 🇪🇹 + English 🇺🇸 toggle included in most templates.
- Theme Toggle — Dark/Light mode out of the box.
- Multiple Package Managers — Works with npm, yarn, pnpm, and bun.
- Git Integration — Optional
git initwith first commit. - Direct Template Fetching — Downloads templates straight from our GitHub repo via degit.
- Project Structure Mapping — Use
--treeflag to generate a visual tree of your project folder saved asstructure.txt.
Getting Started
Pick your favorite package manager and run the new CLI:
# npm
npx jirehgrp@latest
# yarn (classic)
yarn create jirehgrp
# pnpm
pnpm dlx jirehgrp
# bun
bunx jirehgrpFollow the prompts:
- Project Name — Added to
package.json(when present). - Template — Pick a framework + JS/TS.
- Install Dependencies? — Automatically runs with your package manager.
- Initialize Git? — Optional first commit.
CLI Options
You can also use flags to customize behavior:
| Flag | Type | Description |
| ------------ | ------- | -------------------------------------------------------------------------------------- |
| --name | string | Specify project name upfront, skips prompt. |
| --template | string | Choose template upfront (e.g. react-vite/ts), skips prompt. |
| --install | boolean | Automatically install dependencies after scaffolding (overrides prompt). |
| --git | boolean | Initialize a git repository with first commit (overrides prompt). |
| --yes | boolean | Overwrite non-empty target directories without confirmation. |
| --dir | string | Specify the target directory to create the project in (defaults to project name). |
| --pm | string | Force package manager (npm, yarn, pnpm, or bun) for install and commands. |
| --tag | string | Specify Git branch, tag, or commit ref when fetching the template. |
| --tree | boolean | Generate a structure.txt file showing the folder structure of an existing directory. |
Generate Project Structure Tree
Generate a tree view of an existing project directory without scaffolding a new project:
# Long form
npx jirehgrp --tree --dir ./path/to/projectThis creates a structure.txt file inside the specified directory containing a colored, hierarchical listing of folders and files, ignoring common unwanted files/folders.
Overwrite Behavior
If the target directory exists and is not empty, the CLI will exit with an error unless you use the --yes flag to force overwriting.
Example:
jirehgrp --template nextjs --name myapp --yesExamples
# Scaffold a Next.js (TS) project, install deps, and initialize git
npx jirehgrp --template nextjs --install --git
# Scaffold React + Vite TS project into ./my-app directory, overwrite if exists
jirehgrp --template react-vite/ts --name my-app --yes
# Generate a folder tree of an existing project directory
jirehgrp --tree --dir ./my-appFolder Structure
~~create-jireh~~/
├── src/
│ ├── fetchTemplate.ts # Template fetching logic
│ ├── index.ts # CLI entry point
│ ├── postInstall.ts # Package manager install + git init
│ ├── prompts.ts # CLI questions
│ ├── registry.ts # Maps CLI choices to template paths
│ └── tree.ts # Project structure mapping feature
├── LICENSE
├── package.json # Bin config, dependencies, version
├── README.md
└── tsconfig.jsonTemplate Source
All templates are stored in:
Each CLI option maps to a subfolder inside templates/ (see registry.ts).
Package Manager Support
The CLI detects or allows you to choose a package manager and prints the correct next steps:
- npm →
npm install→npm run dev - yarn →
yarn install→yarn dev - pnpm →
pnpm install→pnpm dev - bun →
bun install→bun dev
Requirements
- Node.js >= 18 is required to run
~~create-jireh~~.
Architecture Overview
src/index.ts— CLI entry point and main control flowsrc/fetchTemplate.ts— Handles cloning and copying templates via degitsrc/postInstall.ts— Installs dependencies and initializes git reposrc/prompts.ts— Interactive CLI prompts with usersrc/registry.ts— Template definitions and repo metadatasrc/tree.ts— Generates visual folder tree for--treeflag
Thank You
Thank you to everyone who has downloaded and tried ~~create-jireh~~ so far! 🚀
We’re excited to see 650+ weekly downloads just days after launch — your support means a lot and motivates us to keep improving.
If you have any feedback, issues, or feature requests, please open an issue or contribute on GitHub. We love hearing from you!
Credits
Built with:
Licensed under MIT © 2025 JirehGroup
Made with ❤️ by the JirehGroup Team
