Skip to content

Commit e720657

Browse files
authored
feat: add create-tutorial package (#47)
1 parent 4ab76f5 commit e720657

File tree

6 files changed

+58
-2
lines changed

6 files changed

+58
-2
lines changed

package.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
22
"private": true,
33
"scripts": {
4-
"build": "pnpm run --filter=@tutorialkit/* --filter=tutorialkit build",
4+
"build": "pnpm run --filter=@tutorialkit/* --filter=tutorialkit --filter=create-tutorial build",
55
"template:dev": "TUTORIALKIT_DEV=true pnpm run build && pnpm run --filter=tutorialkit-starter dev",
66
"template:build": "pnpm run build && pnpm run --filter=tutorialkit-starter build",
77
"prepare": "is-ci || husky install",

packages/create-tutorial/package.json

+26
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
{
2+
"name": "create-tutorial",
3+
"version": "0.0.1-alpha.4",
4+
"description": "Interactive tutorials powered by WebContainer API",
5+
"type": "module",
6+
"bugs": "https://github.com/stackblitz/tutorialkit/issues",
7+
"homepage": "https://github.com/stackblitz/tutorialkit",
8+
"license": "MIT",
9+
"bin": {
10+
"create-tutorial": "dist/index.js"
11+
},
12+
"scripts": {
13+
"build": "rm -rf dist && tsc -b",
14+
"prepublishOnly": "pnpm run build"
15+
},
16+
"files": [
17+
"dist"
18+
],
19+
"dependencies": {
20+
"tutorialkit": "workspace:*"
21+
},
22+
"devDependencies": {
23+
"@types/node": "^20.12.7",
24+
"typescript": "^5.4.5"
25+
}
26+
}

packages/create-tutorial/src/index.ts

+9
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
#!/usr/bin/env node
2+
3+
import { spawnSync } from 'node:child_process';
4+
import { createRequire } from 'node:module';
5+
6+
const require = createRequire(import.meta.url);
7+
const tutorialKitEntryPoint = require.resolve('tutorialkit');
8+
9+
spawnSync('node', [tutorialKitEntryPoint, 'create', ...process.argv.slice(2)], { stdio: 'inherit' });
+8
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
{
2+
"extends": "../../tsconfig.json",
3+
"compilerOptions": {
4+
"outDir": "dist",
5+
"declaration": false
6+
},
7+
"include": ["src"]
8+
}

pnpm-lock.yaml

+13
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

scripts/publish.sh

+1-1
Original file line numberDiff line numberDiff line change
@@ -3,4 +3,4 @@
33
# if no tag is specified we'll use 'latest' as the default
44
TAG=${1:-latest}
55

6-
pnpm build && pnpm publish --recursive --tag "$TAG" --filter "@tutorialkit/*" --filter "tutorialkit" "$@"
6+
pnpm build && pnpm publish --recursive --tag "$TAG" --filter "@tutorialkit/*" --filter "tutorialkit" --filter "create-tutorial" "$@"

0 commit comments

Comments
 (0)