create-aron-app 0.1.0
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 +91 -0
- package/dist/index.js +119 -0
- package/package.json +39 -0
package/README.md
ADDED
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
# create-aron-app
|
|
2
|
+
|
|
3
|
+
> CLI scaffolding tool for the Convex + Next.js + Clerk + Nx monorepo template.
|
|
4
|
+
|
|
5
|
+
## Usage
|
|
6
|
+
|
|
7
|
+
```bash
|
|
8
|
+
npm create aron-app
|
|
9
|
+
# or
|
|
10
|
+
npx create-aron-app
|
|
11
|
+
# or
|
|
12
|
+
bunx create-aron-app
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
The CLI will ask a few questions and scaffold a new project:
|
|
16
|
+
|
|
17
|
+
- **Project name** — used as the directory name
|
|
18
|
+
- **Output directory** — where to create the project (defaults to `./<name>`)
|
|
19
|
+
- **Package manager** — Bun, pnpm, npm, or Yarn
|
|
20
|
+
- **Install dependencies** — run install automatically
|
|
21
|
+
- **Initialize git** — create an initial commit
|
|
22
|
+
|
|
23
|
+
## Development
|
|
24
|
+
|
|
25
|
+
### Point to your GitHub repo
|
|
26
|
+
|
|
27
|
+
Edit `src/index.ts` and update `TEMPLATE_SOURCE`:
|
|
28
|
+
|
|
29
|
+
```ts
|
|
30
|
+
const TEMPLATE_SOURCE = "github:YOUR_USERNAME/project-template";
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
It uses [`giget`](https://github.com/unjs/giget) under the hood, which supports:
|
|
34
|
+
|
|
35
|
+
| Format | Example |
|
|
36
|
+
|--------|---------|
|
|
37
|
+
| GitHub | `github:user/repo` |
|
|
38
|
+
| GitHub branch | `github:user/repo#main` |
|
|
39
|
+
| GitHub subdirectory | `github:user/repo/subdir` |
|
|
40
|
+
| GitLab | `gitlab:user/repo` |
|
|
41
|
+
| Bitbucket | `bitbucket:user/repo` |
|
|
42
|
+
|
|
43
|
+
For local testing, you can point it at a local path instead:
|
|
44
|
+
|
|
45
|
+
```ts
|
|
46
|
+
const TEMPLATE_SOURCE = "/absolute/path/to/project-template";
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
### Build
|
|
50
|
+
|
|
51
|
+
```bash
|
|
52
|
+
cd create
|
|
53
|
+
bun run build
|
|
54
|
+
```
|
|
55
|
+
|
|
56
|
+
Bundles `src/index.ts` into `dist/index.js` (a single Node.js-compatible file).
|
|
57
|
+
|
|
58
|
+
### Test locally
|
|
59
|
+
|
|
60
|
+
```bash
|
|
61
|
+
# Run the built file directly:
|
|
62
|
+
node dist/index.js
|
|
63
|
+
|
|
64
|
+
# Or link globally for the full npm create experience:
|
|
65
|
+
npm link
|
|
66
|
+
npm create aron-app
|
|
67
|
+
|
|
68
|
+
# Unlink when done:
|
|
69
|
+
npm unlink -g create-aron-app
|
|
70
|
+
```
|
|
71
|
+
|
|
72
|
+
### Publish to npm
|
|
73
|
+
|
|
74
|
+
```bash
|
|
75
|
+
npm publish --access public
|
|
76
|
+
```
|
|
77
|
+
|
|
78
|
+
## What happens after scaffolding
|
|
79
|
+
|
|
80
|
+
1. Template is downloaded from GitHub (no git history)
|
|
81
|
+
2. Optionally: `git init` + initial commit
|
|
82
|
+
3. Optionally: `bun install` (or your chosen package manager)
|
|
83
|
+
|
|
84
|
+
## Stack
|
|
85
|
+
|
|
86
|
+
- **Backend** — [Convex](https://docs.convex.dev) with `convex-ents` for relational modeling
|
|
87
|
+
- **Frontend** — [Next.js 15](https://nextjs.org) (App Router) + [TanStack Query](https://tanstack.com/query)
|
|
88
|
+
- **Auth** — [Clerk](https://clerk.com)
|
|
89
|
+
- **UI** — Radix UI + Tailwind CSS 4 + custom component library
|
|
90
|
+
- **Monorepo** — [Nx](https://nx.dev) with Bun workspaces
|
|
91
|
+
- **Linting** — [Biome](https://biomejs.dev)
|