create-next-pro-cli 0.1.0 â 0.1.2
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 +46 -15
- package/bin.ts +1 -0
- package/package.json +1 -2
- package/templates/Projects/default/src/app/ui/dashboard/MainDashboard.tsx +0 -21
- package/templates/Projects/default/src/app/ui/dashboard/StatsCard.tsx +0 -14
- package/templates/Projects/default/src/app/ui/dashboard/WelcomeCard.tsx +0 -10
package/README.md
CHANGED
|
@@ -10,6 +10,16 @@ Initially, changes will be accepted or rejected by the creator, but in a few wee
|
|
|
10
10
|
|
|
11
11
|
---
|
|
12
12
|
|
|
13
|
+
> 𤊠Can't wait and too excited to read more? Just want to try it now?
|
|
14
|
+
>
|
|
15
|
+
> âšī¸ To enable autocompletion automatically, add the `--trust` option when installing globally with Bun:
|
|
16
|
+
>
|
|
17
|
+
> ```bash
|
|
18
|
+
> bun install -g create-next-pro-cli --trust
|
|
19
|
+
> ```
|
|
20
|
+
|
|
21
|
+
---
|
|
22
|
+
|
|
13
23
|
## đ¯ Purpose
|
|
14
24
|
|
|
15
25
|
Create an enhanced alternative to `bun create next-app` with an interactive interface to generate Next.js projects tailored to real-world professional needs.
|
|
@@ -158,13 +168,8 @@ my-next-app/
|
|
|
158
168
|
â â âââ not-found.tsx
|
|
159
169
|
â â âââ page.tsx
|
|
160
170
|
â â âââ sitemap.ts
|
|
161
|
-
â â
|
|
162
|
-
â â
|
|
163
|
-
â â âââ ui
|
|
164
|
-
â â âââ dashboard
|
|
165
|
-
â â âââ MainDashboard.tsx
|
|
166
|
-
â â âââ StatsCard.tsx
|
|
167
|
-
â â âââ WelcomeCard.tsx
|
|
171
|
+
â â âââ styles
|
|
172
|
+
â â âââ globals.css
|
|
168
173
|
â âââ auth.config.ts
|
|
169
174
|
â âââ config.ts
|
|
170
175
|
â âââ lib
|
|
@@ -235,9 +240,9 @@ create-next-pro/
|
|
|
235
240
|
|
|
236
241
|
---
|
|
237
242
|
|
|
238
|
-
## đ Usage
|
|
243
|
+
## đ Install & Usage
|
|
239
244
|
|
|
240
|
-
### Local (dev)
|
|
245
|
+
### Local from git (dev)
|
|
241
246
|
|
|
242
247
|
```bash
|
|
243
248
|
bun install
|
|
@@ -247,18 +252,42 @@ bun dev
|
|
|
247
252
|
### Global (on your machine)
|
|
248
253
|
|
|
249
254
|
```bash
|
|
250
|
-
bun link
|
|
251
|
-
create-next-pro-
|
|
255
|
+
bun link create-next-pro-cli
|
|
256
|
+
create-next-pro my-next-project
|
|
252
257
|
```
|
|
253
258
|
|
|
254
259
|
### From another PC (via bunx or global install)
|
|
255
260
|
|
|
256
261
|
```bash
|
|
257
|
-
bunx create-next-pro-cli
|
|
262
|
+
bunx create-next-pro-cli # to try without install
|
|
258
263
|
# or
|
|
259
264
|
bun install -g create-next-pro-cli
|
|
260
265
|
```
|
|
261
266
|
|
|
267
|
+
> âšī¸ To enable autocompletion automatically, add the `--trust` option when installing globally with Bun:
|
|
268
|
+
>
|
|
269
|
+
> ```bash
|
|
270
|
+
> bun install -g create-next-pro-cli --trust
|
|
271
|
+
> ```
|
|
272
|
+
|
|
273
|
+
> Otherwise, run the autocompletion install script from binary manually:
|
|
274
|
+
>
|
|
275
|
+
> ```bash
|
|
276
|
+
> bash install.sh
|
|
277
|
+
> ```
|
|
278
|
+
|
|
279
|
+
> or add the autocompletion line to your `.bashrc`/`.zshrc` :
|
|
280
|
+
>
|
|
281
|
+
> ```bash
|
|
282
|
+
> source ~/.bun/install/global/node_modules/create-next-pro-cli/create-next-pro-completion.sh
|
|
283
|
+
> ```
|
|
284
|
+
>
|
|
285
|
+
> Then restart your terminal or run
|
|
286
|
+
>
|
|
287
|
+
> ```bash
|
|
288
|
+
> source ~/.bashrc
|
|
289
|
+
> ```
|
|
290
|
+
|
|
262
291
|
---
|
|
263
292
|
|
|
264
293
|
## đŖī¸ Roadmap
|
|
@@ -266,10 +295,11 @@ bun install -g create-next-pro-cli
|
|
|
266
295
|
- [x] Bun config + `tsconfig.json`
|
|
267
296
|
- [x] `bin.ts` CLI entry point
|
|
268
297
|
- [x] CLI project structure `src/index.ts`
|
|
269
|
-
- [
|
|
298
|
+
- [ ] Implementation of interactive prompts
|
|
270
299
|
- [x] Basic Next.js project scaffolding
|
|
271
300
|
- [x] CLI file/page generation
|
|
272
301
|
- [x] Custom alias support
|
|
302
|
+
- [x] Next-auth with custom cookies
|
|
273
303
|
- [x] Full `next-intl` support with `lib/i18n/` and `messages/`
|
|
274
304
|
- [ ] Generation of `.env.*`
|
|
275
305
|
- [ ] Multi-platform testing (`bunx`, `link`, `npm`, etc.)
|
|
@@ -279,8 +309,9 @@ bun install -g create-next-pro-cli
|
|
|
279
309
|
|
|
280
310
|
## ⨠Coming Soon
|
|
281
311
|
|
|
282
|
-
-
|
|
283
|
-
-
|
|
312
|
+
- Additional Components templates (admin panel, landing page, etc.)
|
|
313
|
+
- Library templates
|
|
314
|
+
- API templates
|
|
284
315
|
- Prettier / Husky / Commitlint integration
|
|
285
316
|
- Auto deployment to Vercel
|
|
286
317
|
|
package/bin.ts
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "create-next-pro-cli",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.2",
|
|
4
4
|
"description": "Advanced Next.js project scaffolder with i18n, Tailwind, App Router and more.",
|
|
5
5
|
"bin": {
|
|
6
6
|
"create-next-pro": "./bin.ts"
|
|
@@ -15,7 +15,6 @@
|
|
|
15
15
|
},
|
|
16
16
|
"keywords": [
|
|
17
17
|
"nextjs",
|
|
18
|
-
"scaffold",
|
|
19
18
|
"bun",
|
|
20
19
|
"cli",
|
|
21
20
|
"tailwind",
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
import { useTranslations } from "next-intl";
|
|
2
|
-
import BackButton from "@/ui/_global/BackButton";
|
|
3
|
-
import WelcomeCard from "@/ui/dashboard/WelcomeCard";
|
|
4
|
-
import StatsCard from "@/ui/dashboard/StatsCard";
|
|
5
|
-
|
|
6
|
-
export default function DashboardPage() {
|
|
7
|
-
const t = useTranslations("dashboard");
|
|
8
|
-
return (
|
|
9
|
-
<main className="py-8 px-4 max-w-3xl mx-auto">
|
|
10
|
-
<div className="flex items-center justify-between mb-6">
|
|
11
|
-
<h1 className="text-2xl font-bold">{t("title")}</h1>
|
|
12
|
-
<BackButton />
|
|
13
|
-
</div>
|
|
14
|
-
<p className="text-muted mb-8">{t("description")}</p>
|
|
15
|
-
<section className="grid grid-cols-1 md:grid-cols-2 gap-6">
|
|
16
|
-
<WelcomeCard t={t} />
|
|
17
|
-
<StatsCard t={t} />
|
|
18
|
-
</section>
|
|
19
|
-
</main>
|
|
20
|
-
);
|
|
21
|
-
}
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import React from "react";
|
|
2
|
-
|
|
3
|
-
export default function StatsCard({ t }: { t: (key: string) => string }) {
|
|
4
|
-
return (
|
|
5
|
-
<div className="rounded border bg-white p-6 shadow-sm">
|
|
6
|
-
<h2 className="text-lg font-semibold mb-2">Statistiques</h2>
|
|
7
|
-
<ul className="text-sm text-gray-600 space-y-1">
|
|
8
|
-
<li>âĸ {t("widgets.stats.views")}: 123</li>
|
|
9
|
-
<li>âĸ {t("widgets.stats.likes")}: 45</li>
|
|
10
|
-
<li>âĸ {t("widgets.stats.comments")}: 7</li>
|
|
11
|
-
</ul>
|
|
12
|
-
</div>
|
|
13
|
-
);
|
|
14
|
-
}
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import React from "react";
|
|
2
|
-
|
|
3
|
-
export default function WelcomeCard({ t }: { t: (key: string) => string }) {
|
|
4
|
-
return (
|
|
5
|
-
<div className="rounded border bg-white p-6 shadow-sm">
|
|
6
|
-
<h2 className="text-lg font-semibold mb-2">{t("widgets.welcome")}</h2>
|
|
7
|
-
<p className="text-gray-600">{t("widgets.description")}</p>
|
|
8
|
-
</div>
|
|
9
|
-
);
|
|
10
|
-
}
|