rebar-js 1.0.4 → 1.0.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +55 -150
- package/bin/project.js +0 -0
- package/package.json +59 -58
package/README.md
CHANGED
|
@@ -1,150 +1,55 @@
|
|
|
1
|
-
<
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
##
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
bun add -g rebar-js
|
|
57
|
-
```
|
|
58
|
-
|
|
59
|
-
Then run:
|
|
60
|
-
|
|
61
|
-
```bash
|
|
62
|
-
rebar-js init
|
|
63
|
-
```
|
|
64
|
-
|
|
65
|
-
<br>
|
|
66
|
-
|
|
67
|
-
## Usage
|
|
68
|
-
|
|
69
|
-
### Interactive mode
|
|
70
|
-
|
|
71
|
-
```bash
|
|
72
|
-
rebar-js init
|
|
73
|
-
```
|
|
74
|
-
|
|
75
|
-
Walks you through:
|
|
76
|
-
|
|
77
|
-
1. **Package manager** — choose npm, yarn, or bun
|
|
78
|
-
2. **Framework** — pick Next.js, Vite, Express, Expo, or Electron
|
|
79
|
-
3. **Project name** — enter your project name
|
|
80
|
-
4. **Extra tooling** — select optional tools (varies by framework)
|
|
81
|
-
|
|
82
|
-
### Headless mode
|
|
83
|
-
|
|
84
|
-
```bash
|
|
85
|
-
rebar-js start -m npm -f vite
|
|
86
|
-
```
|
|
87
|
-
|
|
88
|
-
Flags:
|
|
89
|
-
|
|
90
|
-
| Flag | Description |
|
|
91
|
-
|------|-------------|
|
|
92
|
-
| `-m, --packageManager <name>` | Package manager: `npm`, `yarn`, `bun` |
|
|
93
|
-
| `-f, --framework <name>` | Framework: `nextjs`, `vite`, `express`, `expo`, `electron` |
|
|
94
|
-
|
|
95
|
-
<br>
|
|
96
|
-
|
|
97
|
-
## Supported frameworks
|
|
98
|
-
|
|
99
|
-
| Framework | Prompts |
|
|
100
|
-
|-----------|---------|
|
|
101
|
-
| **Next.js** | React Compiler, shadcn/ui, tRPC, Drizzle ORM, Better Auth, Husky, ESLint / Biome |
|
|
102
|
-
| **Vite (React)** | TypeScript, Tailwind CSS, shadcn/ui, React Compiler, React Router, path aliasing |
|
|
103
|
-
| **Express** | TypeScript, Git, ESLint, path aliasing |
|
|
104
|
-
| **Expo** | Interactive `create-expo-app` (passthrough) |
|
|
105
|
-
| **Electron** | Electron Forge / Electron Vite (passthrough) |
|
|
106
|
-
|
|
107
|
-
<br>
|
|
108
|
-
|
|
109
|
-
## Requirements
|
|
110
|
-
|
|
111
|
-
- **Node.js** >= 20
|
|
112
|
-
- **npm**, **yarn**, or **bun** (depending on your preference)
|
|
113
|
-
- **Git** (for Express `git` option)
|
|
114
|
-
|
|
115
|
-
<br>
|
|
116
|
-
|
|
117
|
-
## Development
|
|
118
|
-
|
|
119
|
-
```bash
|
|
120
|
-
# Clone
|
|
121
|
-
git clone https://github.com/anomalyco/rebar-js.git
|
|
122
|
-
cd rebar-js
|
|
123
|
-
|
|
124
|
-
# Install dependencies
|
|
125
|
-
npm install
|
|
126
|
-
|
|
127
|
-
# Type-check
|
|
128
|
-
npm run typecheck
|
|
129
|
-
|
|
130
|
-
# Lint
|
|
131
|
-
npm run lint
|
|
132
|
-
```
|
|
133
|
-
|
|
134
|
-
Run the CLI locally:
|
|
135
|
-
|
|
136
|
-
```bash
|
|
137
|
-
node bin/project.js init
|
|
138
|
-
```
|
|
139
|
-
|
|
140
|
-
<br>
|
|
141
|
-
|
|
142
|
-
## Why "rebar-js"?
|
|
143
|
-
|
|
144
|
-
rebar-js is the steel reinforcing bar that gives concrete its tensile strength — it's hidden inside the structure, but everything relies on it. A solid scaffolding tool works the same way.
|
|
145
|
-
|
|
146
|
-
<br>
|
|
147
|
-
|
|
148
|
-
## License
|
|
149
|
-
|
|
150
|
-
ISC
|
|
1
|
+
<div align="center">
|
|
2
|
+
|
|
3
|
+
# rebar-js
|
|
4
|
+
|
|
5
|
+
Interactive scaffolding CLI for modern JS/TS projects.
|
|
6
|
+
|
|
7
|
+
[](https://www.npmjs.com/package/rebar-js)
|
|
8
|
+
[](./LICENSE)
|
|
9
|
+
[](https://nodejs.org)
|
|
10
|
+
|
|
11
|
+
</div>
|
|
12
|
+
|
|
13
|
+
---
|
|
14
|
+
|
|
15
|
+
Pick a framework, answer a few prompts, get a production-ready project — dependencies installed, tooling wired, ready to code.
|
|
16
|
+
|
|
17
|
+
```bash
|
|
18
|
+
npx rebar-js init
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
## Frameworks
|
|
22
|
+
|
|
23
|
+
| Framework | Tooling options |
|
|
24
|
+
|-----------|----------------|
|
|
25
|
+
| **Next.js** | shadcn/ui, tRPC, Drizzle ORM, Better Auth, React Compiler, ESLint / Biome, Husky |
|
|
26
|
+
| **Vite (React)** | TypeScript, Tailwind CSS, shadcn/ui, React Router, React Compiler, path aliasing |
|
|
27
|
+
| **Express** | TypeScript, ESLint, Git, path aliasing |
|
|
28
|
+
| **Expo** | passthrough via `create-expo-app` |
|
|
29
|
+
| **Electron** | Electron Forge or Electron Vite |
|
|
30
|
+
|
|
31
|
+
## Usage
|
|
32
|
+
|
|
33
|
+
**Interactive**
|
|
34
|
+
```bash
|
|
35
|
+
npx rebar-js init
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
**Headless**
|
|
39
|
+
```bash
|
|
40
|
+
npx rebar-js start -m npm -f nextjs
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
| Flag | Values |
|
|
44
|
+
|------|--------|
|
|
45
|
+
| `-m, --packageManager` | `npm` · `yarn` · `bun` |
|
|
46
|
+
| `-f, --framework` | `nextjs` · `vite` · `express` · `expo` · `electron` |
|
|
47
|
+
|
|
48
|
+
## Requirements
|
|
49
|
+
|
|
50
|
+
- Node.js >= 20
|
|
51
|
+
- npm, yarn, or bun
|
|
52
|
+
|
|
53
|
+
## License
|
|
54
|
+
|
|
55
|
+
ISC
|
package/bin/project.js
CHANGED
|
File without changes
|
package/package.json
CHANGED
|
@@ -1,58 +1,59 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "rebar-js",
|
|
3
|
-
"version": "1.0.
|
|
4
|
-
"description": "Interactive CLI for scaffolding JavaScript and TypeScript projects across multiple frameworks.",
|
|
5
|
-
"bin": {
|
|
6
|
-
"rebar-js": "./bin/project.js"
|
|
7
|
-
},
|
|
8
|
-
"files": [
|
|
9
|
-
"bin/",
|
|
10
|
-
"dist/"
|
|
11
|
-
],
|
|
12
|
-
"engines": {
|
|
13
|
-
"node": ">=20"
|
|
14
|
-
},
|
|
15
|
-
"repository": {
|
|
16
|
-
"type": "git",
|
|
17
|
-
"url": "git+https://github.com/prncexe/rebar.git"
|
|
18
|
-
},
|
|
19
|
-
"bugs": {
|
|
20
|
-
"url": "https://github.com/prncexe/rebar/issues"
|
|
21
|
-
},
|
|
22
|
-
"homepage": "https://github.com/prncexe/rebar#readme",
|
|
23
|
-
"keywords": [
|
|
24
|
-
"scaffold",
|
|
25
|
-
"cli",
|
|
26
|
-
"nextjs",
|
|
27
|
-
"vite",
|
|
28
|
-
"express",
|
|
29
|
-
"expo",
|
|
30
|
-
"electron",
|
|
31
|
-
"typescript"
|
|
32
|
-
],
|
|
33
|
-
"author": "prncexe",
|
|
34
|
-
"license": "ISC",
|
|
35
|
-
"type": "module",
|
|
36
|
-
"
|
|
37
|
-
"
|
|
38
|
-
"
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
"
|
|
42
|
-
"
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
"
|
|
46
|
-
"
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
"
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
"
|
|
53
|
-
"
|
|
54
|
-
"
|
|
55
|
-
"
|
|
56
|
-
"
|
|
57
|
-
|
|
58
|
-
}
|
|
1
|
+
{
|
|
2
|
+
"name": "rebar-js",
|
|
3
|
+
"version": "1.0.5",
|
|
4
|
+
"description": "Interactive CLI for scaffolding JavaScript and TypeScript projects across multiple frameworks.",
|
|
5
|
+
"bin": {
|
|
6
|
+
"rebar-js": "./bin/project.js"
|
|
7
|
+
},
|
|
8
|
+
"files": [
|
|
9
|
+
"bin/",
|
|
10
|
+
"dist/"
|
|
11
|
+
],
|
|
12
|
+
"engines": {
|
|
13
|
+
"node": ">=20"
|
|
14
|
+
},
|
|
15
|
+
"repository": {
|
|
16
|
+
"type": "git",
|
|
17
|
+
"url": "git+https://github.com/prncexe/rebar.git"
|
|
18
|
+
},
|
|
19
|
+
"bugs": {
|
|
20
|
+
"url": "https://github.com/prncexe/rebar/issues"
|
|
21
|
+
},
|
|
22
|
+
"homepage": "https://github.com/prncexe/rebar#readme",
|
|
23
|
+
"keywords": [
|
|
24
|
+
"scaffold",
|
|
25
|
+
"cli",
|
|
26
|
+
"nextjs",
|
|
27
|
+
"vite",
|
|
28
|
+
"express",
|
|
29
|
+
"expo",
|
|
30
|
+
"electron",
|
|
31
|
+
"typescript"
|
|
32
|
+
],
|
|
33
|
+
"author": "prncexe",
|
|
34
|
+
"license": "ISC",
|
|
35
|
+
"type": "module",
|
|
36
|
+
"scripts": {
|
|
37
|
+
"build": "tsup src/index.ts --format esm --out-dir dist --clean",
|
|
38
|
+
"typecheck": "tsc --noEmit",
|
|
39
|
+
"lint": "eslint .",
|
|
40
|
+
"lint:fix": "eslint . --fix",
|
|
41
|
+
"dev": "tsx src/index.ts",
|
|
42
|
+
"prepublishOnly": "npm run build && npm run typecheck && npm run lint"
|
|
43
|
+
},
|
|
44
|
+
"dependencies": {
|
|
45
|
+
"@inquirer/prompts": "^8.4.2",
|
|
46
|
+
"commander": "^14.0.3"
|
|
47
|
+
},
|
|
48
|
+
"devDependencies": {
|
|
49
|
+
"@eslint/js": "^10.0.1",
|
|
50
|
+
"@types/node": "^25.6.2",
|
|
51
|
+
"eslint": "^10.3.0",
|
|
52
|
+
"globals": "^17.6.0",
|
|
53
|
+
"jiti": "^2.7.0",
|
|
54
|
+
"tsx": "^4.21.0",
|
|
55
|
+
"tsup": "^8.5.1",
|
|
56
|
+
"typescript": "^5.9.3",
|
|
57
|
+
"typescript-eslint": "^8.59.2"
|
|
58
|
+
}
|
|
59
|
+
}
|