@rshono/create 1.0.0-rc.2 → 1.0.0-rc.3
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 +20 -11
- package/bin/create-rshono.mjs +0 -0
- package/dist/api.mjs +4 -3
- package/dist/cli.mjs +9 -8
- package/package.json +10 -11
- package/templates/base/public/favicon.svg +2 -1
package/README.md
CHANGED
|
@@ -1,17 +1,26 @@
|
|
|
1
|
-
|
|
1
|
+
<p align="center">
|
|
2
|
+
<img src="https://raw.githubusercontent.com/rshono/rshono/main/logo.svg" alt="" width="72" height="72" />
|
|
3
|
+
</p>
|
|
2
4
|
|
|
3
|
-
|
|
5
|
+
<h1 align="center">@rshono/create</h1>
|
|
6
|
+
|
|
7
|
+
<p align="center">
|
|
8
|
+
Scaffolds a new <a href="https://github.com/rshono/rshono">rshono</a> app — Hono + Rspack + React Server Components.
|
|
9
|
+
</p>
|
|
4
10
|
|
|
5
11
|
```bash
|
|
6
|
-
|
|
7
|
-
|
|
12
|
+
npx @rshono/create@latest my-app
|
|
13
|
+
pnx @rshono/create my-app
|
|
14
|
+
bunx @rshono/create my-app
|
|
8
15
|
yarn create @rshono my-app
|
|
9
|
-
bun create @rshono my-app
|
|
10
16
|
```
|
|
11
17
|
|
|
12
|
-
The package manager that ran it is the one the project gets: it is read from `npm_config_user_agent`,
|
|
13
|
-
for the install, written into `packageManager` for Corepack,
|
|
14
|
-
prints. Nothing asks you which one you meant.
|
|
18
|
+
The package manager that ran it is the one the project gets: it is read from `npm_config_user_agent`, which
|
|
19
|
+
every one of these runners sets, and it is used for the install, written into `packageManager` for Corepack,
|
|
20
|
+
and used in every command the closing summary prints. Nothing asks you which one you meant.
|
|
21
|
+
|
|
22
|
+
Yarn is the odd row out because `yarn dlx` is Berry-only, while `yarn create` works in either — and `pnx`
|
|
23
|
+
arrived in pnpm 10.16, before which it is `pnpm dlx`.
|
|
15
24
|
|
|
16
25
|
## The questions
|
|
17
26
|
|
|
@@ -32,7 +41,7 @@ the package manager that was detected, `--force` to scaffold into a directory th
|
|
|
32
41
|
given. **A non-interactive terminal implies `-y`**, so this is one command in CI or from an agent:
|
|
33
42
|
|
|
34
43
|
```bash
|
|
35
|
-
|
|
44
|
+
npx @rshono/create@latest my-app -y --deploy cloudflare --tailwind --quality biome
|
|
36
45
|
```
|
|
37
46
|
|
|
38
47
|
The deploy targets, and the deploy command each one prints, are generated from the framework's own
|
|
@@ -113,5 +122,5 @@ CREATE_RSHONO_E2E=1 pnpm --filter @rshono/create test # also: pack, install an
|
|
|
113
122
|
refusal to overwrite somebody's files are checked. `e2e.test.mjs` is the opt-in one, and the only one that
|
|
114
123
|
installs anything.
|
|
115
124
|
|
|
116
|
-
`@clack/prompts` (MIT) is bundled rather than depended on, so `
|
|
117
|
-
can ask its first question.
|
|
125
|
+
`@clack/prompts` (MIT) is bundled rather than depended on, so `npx @rshono/create` downloads one tarball
|
|
126
|
+
before it can ask its first question.
|
package/bin/create-rshono.mjs
CHANGED
|
File without changes
|
package/dist/api.mjs
CHANGED
|
@@ -79,7 +79,7 @@ __webpack_require__.d(__webpack_exports__, {
|
|
|
79
79
|
|
|
80
80
|
;// CONCATENATED MODULE: ./src/generated/framework.ts
|
|
81
81
|
// GENERATED by scripts/codegen.mjs from packages/core — do not edit. Run `pnpm --filter @rshono/create codegen`.
|
|
82
|
-
/** The framework release a scaffolded app is pinned to: this package and rshono ship together. */ const RSHONO_VERSION = '1.0.0-rc.
|
|
82
|
+
/** The framework release a scaffolded app is pinned to: this package and rshono ship together. */ const RSHONO_VERSION = '1.0.0-rc.3';
|
|
83
83
|
/**
|
|
84
84
|
* The Node range rshono itself declares, restated in every scaffolded app's `engines` — so a CI image
|
|
85
85
|
* or a contributor on an older Node hears it from their package manager rather than from a stack trace.
|
|
@@ -760,8 +760,9 @@ function packageManager(name, version) {
|
|
|
760
760
|
}
|
|
761
761
|
/**
|
|
762
762
|
* Which package manager invoked us. Every one of them sets `npm_config_user_agent` for the process it
|
|
763
|
-
* spawns — `pnpm/11.9.0 npm/? node/v22.14.0 darwin arm64` — so
|
|
764
|
-
* project without asking, and the exact version comes along for the
|
|
763
|
+
* spawns, from its runner as much as from `create` — `pnpm/11.9.0 npm/? node/v22.14.0 darwin arm64` — so
|
|
764
|
+
* `pnx @rshono/create` scaffolds a pnpm project without asking, and the exact version comes along for the
|
|
765
|
+
* `packageManager` field.
|
|
765
766
|
*
|
|
766
767
|
* Falls back to npm, which is also what a bare `node bin/create-rshono.mjs` gets.
|
|
767
768
|
*/ function detectPackageManager(userAgent = process.env.npm_config_user_agent) {
|
package/dist/cli.mjs
CHANGED
|
@@ -2943,7 +2943,7 @@ function hasGit(cwd) {
|
|
|
2943
2943
|
|
|
2944
2944
|
;// CONCATENATED MODULE: ./src/generated/framework.ts
|
|
2945
2945
|
// GENERATED by scripts/codegen.mjs from packages/core — do not edit. Run `pnpm --filter @rshono/create codegen`.
|
|
2946
|
-
/** The framework release a scaffolded app is pinned to: this package and rshono ship together. */ const RSHONO_VERSION = '1.0.0-rc.
|
|
2946
|
+
/** The framework release a scaffolded app is pinned to: this package and rshono ship together. */ const RSHONO_VERSION = '1.0.0-rc.3';
|
|
2947
2947
|
/**
|
|
2948
2948
|
* The Node range rshono itself declares, restated in every scaffolded app's `engines` — so a CI image
|
|
2949
2949
|
* or a contributor on an older Node hears it from their package manager rather than from a stack trace.
|
|
@@ -3645,8 +3645,9 @@ function packageManager(name, version) {
|
|
|
3645
3645
|
}
|
|
3646
3646
|
/**
|
|
3647
3647
|
* Which package manager invoked us. Every one of them sets `npm_config_user_agent` for the process it
|
|
3648
|
-
* spawns — `pnpm/11.9.0 npm/? node/v22.14.0 darwin arm64` — so
|
|
3649
|
-
* project without asking, and the exact version comes along for the
|
|
3648
|
+
* spawns, from its runner as much as from `create` — `pnpm/11.9.0 npm/? node/v22.14.0 darwin arm64` — so
|
|
3649
|
+
* `pnx @rshono/create` scaffolds a pnpm project without asking, and the exact version comes along for the
|
|
3650
|
+
* `packageManager` field.
|
|
3650
3651
|
*
|
|
3651
3652
|
* Falls back to npm, which is also what a bare `node bin/create-rshono.mjs` gets.
|
|
3652
3653
|
*/ function detectPackageManager(userAgent = process.env.npm_config_user_agent) {
|
|
@@ -3773,7 +3774,7 @@ const DEFAULT_DIRECTORY = 'my-rshono-app';
|
|
|
3773
3774
|
/** Every accepted name comes from `options.ts`, so the help cannot promise one the validation refuses. */ const HELP = `create-rshono — scaffold a new rshono app
|
|
3774
3775
|
|
|
3775
3776
|
Usage:
|
|
3776
|
-
|
|
3777
|
+
npx @rshono/create@latest [directory] [options]
|
|
3777
3778
|
|
|
3778
3779
|
Options:
|
|
3779
3780
|
-y, --yes accept the default for every question not given as a flag
|
|
@@ -3793,7 +3794,7 @@ Options:
|
|
|
3793
3794
|
Every question can be answered by a flag, and a non-interactive terminal implies --yes — so one command
|
|
3794
3795
|
scaffolds without prompting:
|
|
3795
3796
|
|
|
3796
|
-
|
|
3797
|
+
npx @rshono/create@latest my-app -y --deploy cloudflare --tailwind --quality biome
|
|
3797
3798
|
`;
|
|
3798
3799
|
function fail(message) {
|
|
3799
3800
|
log.error(message);
|
|
@@ -3880,11 +3881,11 @@ function fail(message) {
|
|
|
3880
3881
|
async function main() {
|
|
3881
3882
|
const { values, positionals } = parse();
|
|
3882
3883
|
if (values.help) return console.log(HELP);
|
|
3883
|
-
if (values.version) return console.log("1.0.0-rc.
|
|
3884
|
+
if (values.version) return console.log("1.0.0-rc.3");
|
|
3884
3885
|
/*
|
|
3885
3886
|
* A pipe, a CI job or an agent gets the defaults rather than a prompt nothing can answer. Both streams
|
|
3886
|
-
* have to be a terminal: the prompts draw on stdout but *read from stdin*, so `echo |
|
|
3887
|
-
* stdout still attached would otherwise ask a question with nothing behind the keyboard.
|
|
3887
|
+
* have to be a terminal: the prompts draw on stdout but *read from stdin*, so `echo | npx @rshono/create`
|
|
3888
|
+
* with stdout still attached would otherwise ask a question with nothing behind the keyboard.
|
|
3888
3889
|
*/ const interactive = Boolean(process.stdin.isTTY && process.stdout.isTTY) && !values.yes;
|
|
3889
3890
|
const pmFlag = oneOf(values.pm, PACKAGE_MANAGERS, 'pm');
|
|
3890
3891
|
const pm = pmFlag ? packageManager(pmFlag) : detectPackageManager();
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@rshono/create",
|
|
3
|
-
"version": "1.0.0-rc.
|
|
3
|
+
"version": "1.0.0-rc.3",
|
|
4
4
|
"description": "Scaffold a new rshono app — Hono + Rspack + React Server Components",
|
|
5
5
|
"author": "Lasse <lasse@lassetange.com> (https://www.lassetange.com)",
|
|
6
6
|
"license": "ISC",
|
|
@@ -41,19 +41,18 @@
|
|
|
41
41
|
"publishConfig": {
|
|
42
42
|
"access": "public"
|
|
43
43
|
},
|
|
44
|
+
"devDependencies": {
|
|
45
|
+
"@clack/prompts": "^1.7.0",
|
|
46
|
+
"@rspack/core": "2.1.5",
|
|
47
|
+
"@types/node": "^26.1.1",
|
|
48
|
+
"typescript": "^7.0.2",
|
|
49
|
+
"@rshono/core": "1.0.0-rc.3"
|
|
50
|
+
},
|
|
44
51
|
"scripts": {
|
|
45
52
|
"build": "node scripts/codegen.mjs && node scripts/build.mjs",
|
|
46
53
|
"clean": "node -e \"require('node:fs').rmSync('dist',{recursive:true,force:true})\"",
|
|
47
54
|
"codegen": "node scripts/codegen.mjs",
|
|
48
55
|
"typecheck": "node scripts/codegen.mjs && tsc --noEmit",
|
|
49
|
-
"test": "npm run build && node --test --test-concurrency=1 \"test/*.test.mjs\""
|
|
50
|
-
"prepack": "npm run build"
|
|
51
|
-
},
|
|
52
|
-
"devDependencies": {
|
|
53
|
-
"@clack/prompts": "^1.7.0",
|
|
54
|
-
"@rspack/core": "2.1.5",
|
|
55
|
-
"@types/node": "^26.1.1",
|
|
56
|
-
"@rshono/core": "workspace:*",
|
|
57
|
-
"typescript": "^7.0.2"
|
|
56
|
+
"test": "npm run build && node --test --test-concurrency=1 \"test/*.test.mjs\""
|
|
58
57
|
}
|
|
59
|
-
}
|
|
58
|
+
}
|
|
@@ -1 +1,2 @@
|
|
|
1
|
-
|
|
1
|
+
<!-- The rshono mark, as a placeholder — replace it with your own and the tab is yours. -->
|
|
2
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none"><title>rshono</title><path fill="#087EA4" d="M12.4365 0.2520325c0.062375 -0.0080215 0.11745 0.0077075 0.16515 0.0471875 1.755075 2.142025 3.40665 4.359855 4.954725 6.65348 1.14615 1.725625 2.121325 3.550175 2.92565 5.4738 1.2845 3.426025 0.616 6.40675 -2.005475 8.9421 -2.293725 1.938575 -4.936225 2.693575 -7.927575 2.265025 -3.57555 -0.729025 -6.00575 -2.7974 -7.290525 -6.205225 -0.33465 -1.109425 -0.44475 -2.241925 -0.3303 -3.397525 0.19055 -1.9891 0.662425 -3.9081 1.415625 -5.7569 0.31385 -0.75435 0.722825 -1.4464 1.2269 -2.076275 0.411225 0.4898 0.80445 0.993175 1.179675 1.510025 0.17375 0.181625 0.354625 0.35465 0.542675 0.51905C8.728325 5.378325 10.44285 2.7201 12.4365 0.2520325Z"/><path fill="#61DAFB" d="M12.10625 4.07425c1.73145 2.008325 3.296525 4.1475 4.695175 6.41755 0.438525 0.75115 0.800275 1.537625 1.085325 2.3594 0.593825 2.336175 -0.043225 4.26305 -1.9111 5.7805 -1.80655 1.2712 -3.788425 1.6487 -5.945675 1.132525 -2.326325 -0.721875 -3.671175 -2.286975 -4.034575 -4.6952 -0.088175 -0.7593 -0.009525 -1.4986 0.23595 -2.217825 0.35005 -0.888875 0.774725 -1.73825 1.274075 -2.54815 0.471875 -0.6921 0.94375 -1.38415 1.415625 -2.07625 1.071925 -1.378375 2.13365 -2.762525 3.1852 -4.15255Z"/></svg>
|