shadboard 0.0.1

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.
@@ -0,0 +1,18 @@
1
+ {
2
+ "name": "shadboard",
3
+ "image": "mcr.microsoft.com/devcontainers/typescript-node:1-22-bookworm",
4
+ "features": {
5
+ "ghcr.io/shyim/devcontainers-features/bun:0": {}
6
+ },
7
+ "customizations": {
8
+ "vscode": {
9
+ "extensions": [
10
+ "esbenp.prettier-vscode",
11
+ "amatiasq.sort-imports",
12
+ "mhutchie.git-graph",
13
+ "eamodio.gitlens",
14
+ "bradlc.vscode-tailwindcss"
15
+ ]
16
+ }
17
+ }
18
+ }
package/README.md ADDED
@@ -0,0 +1,42 @@
1
+ # Shadboard Monorepo (v0.0.1)
2
+
3
+ Monorepo base para una librería en TypeScript con `packages` y `examples`.
4
+
5
+ ## Estructura
6
+
7
+ - `packages/core`: Librería principal (`@shadboard/core`).
8
+ - `examples/basic`: Ejemplo mínimo usando la librería.
9
+
10
+ ## Scripts (root)
11
+
12
+ - `build`: Construye todos los paquetes.
13
+ - `dev`: Ejecuta los ejemplos en modo dev.
14
+ - `clean`: Limpia los `dist`.
15
+
16
+ ## Configuración
17
+
18
+ - Workspaces con `pnpm`.
19
+ - `tsup` para build de la librería.
20
+ - `tsx` para ejecutar ejemplos TS.
21
+
22
+ ## Primeros pasos
23
+
24
+ ```sh
25
+ # Instalar pnpm (si no lo tienes)
26
+ # macOS
27
+ corepack enable
28
+
29
+ # Instalar deps del monorepo
30
+ pnpm install
31
+
32
+ # Construir la librería
33
+ pnpm build
34
+
35
+ # Ejecutar el ejemplo
36
+ pnpm --filter @shadboard/example-basic dev
37
+ ```
38
+
39
+ ## Publicación
40
+
41
+ - La librería `@shadboard/core` se construye a `dist` con ESM + CJS y tipos.
42
+ - Ajusta `name`, `version` y metadata en `packages/core/package.json` para publicar.
@@ -0,0 +1,17 @@
1
+ {
2
+ "name": "@shadboard/example-basic",
3
+ "version": "0.0.1",
4
+ "type": "module",
5
+ "scripts": {
6
+ "dev": "tsx src/index.ts",
7
+ "build": "tsc -p tsconfig.json",
8
+ "clean": "rm -rf dist"
9
+ },
10
+ "dependencies": {
11
+ "@shadboard/core": "workspace:*"
12
+ },
13
+ "devDependencies": {
14
+ "tsx": "^4.19.2",
15
+ "typescript": "^5.6.3"
16
+ }
17
+ }
@@ -0,0 +1,3 @@
1
+ import { greet } from "@shadboard/core";
2
+
3
+ console.log(greet({ name: "Azirgo" }));
@@ -0,0 +1,7 @@
1
+ {
2
+ "extends": "../../tsconfig.json",
3
+ "compilerOptions": {
4
+ "outDir": "./dist"
5
+ },
6
+ "include": ["src"]
7
+ }
package/package.json ADDED
@@ -0,0 +1,25 @@
1
+ {
2
+ "name": "shadboard",
3
+ "private": false,
4
+ "version": "0.0.1",
5
+ "packageManager": "pnpm@9.0.0",
6
+ "scripts": {
7
+ "build": "pnpm -r run build",
8
+ "clean": "pnpm -r run clean",
9
+ "dev": "pnpm -r --filter ./examples/* run dev",
10
+ "lint": "pnpm -r run lint",
11
+ "test": "pnpm -r run test"
12
+ },
13
+ "devDependencies": {
14
+ "typescript": "^5.6.3",
15
+ "tsup": "^8.0.1",
16
+ "tsx": "^4.19.2"
17
+ },
18
+ "pnpm": {
19
+ "packageExtensions": {}
20
+ },
21
+ "workspaces": [
22
+ "packages/*",
23
+ "examples/*"
24
+ ]
25
+ }
@@ -0,0 +1,26 @@
1
+ {
2
+ "name": "@shadboard/core",
3
+ "version": "0.0.1",
4
+ "type": "module",
5
+ "main": "./dist/index.cjs",
6
+ "module": "./dist/index.js",
7
+ "types": "./dist/index.d.ts",
8
+ "exports": {
9
+ ".": {
10
+ "types": "./dist/index.d.ts",
11
+ "import": "./dist/index.js",
12
+ "require": "./dist/index.cjs"
13
+ }
14
+ },
15
+ "scripts": {
16
+ "build": "tsup src/index.ts --format esm,cjs --dts --clean",
17
+ "clean": "rm -rf dist",
18
+ "lint": "echo 'no lint configured'",
19
+ "test": "node -e \"console.log('no tests yet')\""
20
+ },
21
+ "dependencies": {},
22
+ "devDependencies": {
23
+ "tsup": "^8.0.1",
24
+ "typescript": "^5.6.3"
25
+ }
26
+ }
@@ -0,0 +1,8 @@
1
+ export type GreetingOptions = {
2
+ name?: string;
3
+ };
4
+
5
+ export function greet(opts: GreetingOptions = {}): string {
6
+ const name = opts.name ?? "mundo";
7
+ return `Hola, ${name}!`;
8
+ }
@@ -0,0 +1,7 @@
1
+ {
2
+ "extends": "../../tsconfig.json",
3
+ "compilerOptions": {
4
+ "outDir": "./dist"
5
+ },
6
+ "include": ["src"]
7
+ }
package/tsconfig.json ADDED
@@ -0,0 +1,14 @@
1
+ {
2
+ "compilerOptions": {
3
+ "target": "ES2020",
4
+ "module": "ESNext",
5
+ "moduleResolution": "Bundler",
6
+ "declaration": true,
7
+ "outDir": "dist",
8
+ "strict": true,
9
+ "esModuleInterop": true,
10
+ "skipLibCheck": true,
11
+ "forceConsistentCasingInFileNames": true
12
+ },
13
+ "exclude": ["node_modules", "dist"]
14
+ }