wip: template

Signed-off-by: Alix von Schirp <github@avonschirp.bootmedia.de>
This commit is contained in:
2025-10-22 05:26:09 +02:00
parent c5ce1bfbcd
commit 5e570201bd
7 changed files with 155 additions and 0 deletions

View File

View File

@@ -0,0 +1,7 @@
import repoConfig from "@repo/configs/eslint";
export default [
...repoConfig,
{ ignores: ["dist/**", "docs/**"] },
{ files: ["**/*.{ts}"] },
];

View File

@@ -0,0 +1,3 @@
import repoCofig from "@repo/configs/jest";
export default [...repoCofig];

View File

@@ -0,0 +1,87 @@
{
"name": "{{name}}",
"description": "{{description}}",
"homepage": "https://cis-oss.github.io/notify",
"version": "0.0.10",
"main": "src/index.ts",
"author": {
"email": "hi@b00tload.space",
"name": "Alix von Schirp",
"url": "https://b00tload.space"
},
"repository": {
"type": "git",
"url": "git+https://github.com/cis-oss/pushover.git"
},
"bugs": {
"url": "https://github.com/cis-oss/pushover/issues"
},
"keywords": [
"notification",
"notify"
],
"dependencies": {
"zod": "^3.24.2"
},
"devDependencies": {
"@eslint/js": "^9.22.0",
"@repo/configs": "workspace:",
"@shipgirl/typedoc-plugin-versions": "^0.3.0",
"@types/jest": "^29.5.14",
"@types/node": "^22.13.10",
"eslint": "^9.22.0",
"eslint-config-prettier": "^10.1.1",
"eslint-plugin-only-warn": "^1.1.0",
"globals": "^16.0.0",
"jest": "^29.7.0",
"shx": "^0.4.0",
"ts-jest": "^29.2.6",
"tsx": "^4.19.3",
"typedoc": "^0.27.9",
"typedoc-github-theme": "^0.2.1",
"typedoc-plugin-coverage": "^3.4.1",
"typedoc-plugin-extras": "^4.0.0",
"typedoc-plugin-include-example": "^2.0.2",
"typedoc-plugin-inline-sources": "^1.2.1",
"typedoc-plugin-mdn-links": "^5.0.1",
"typedoc-plugin-zod": "^1.4.0",
"typescript": "^5.5.3",
"typescript-eslint": "^8.26.0"
},
"files": [
"dist/**/*.{js,ts,map}"
],
"scripts": {
"build": "tsc",
"build:watch": "tsc --watch",
"check": "pnpm run lint:ci && pnpm run typecheck",
"clean": "shx rm -rf dist/",
"docs:generate": "typedoc",
"format:check": "prettier --check .",
"lint": "eslint .",
"lint:ci": "eslint --max-warnings 0",
"prepublishOnly": "pnpm run clean && pnpm run build",
"test": "jest",
"typecheck": "tsc --noEmit"
},
"private": true,
"license": "MIT",
"maintainers": [
{
"name": "Alix von Schirp",
"email": "hi@b00tload.space",
"url": "https://b00tload.space"
},
{
"name": "Ole",
"email": "jateute123@gmail.com",
"url": "https://github.com/jateute"
}
],
"packageManager": "pnpm@10.6.5",
"publishConfig": {
"main": "dist/index.js",
"types": "dist/index.d.ts"
},
"type": "module"
}

View File

View File

@@ -0,0 +1,12 @@
{
"extends": "@repo/configs/tsconfig.json",
"compilerOptions": {
/* Path Aliases */
"baseUrl": "./src",
"paths": {
"~/*": ["./src/*"]
}
},
"include": ["src/**/*.ts", "src/**/*.tsx"],
"exclude": ["node_modules/**/*", "docs/**/*", "dist/**/*"]
}

View File

@@ -0,0 +1,46 @@
import type { PlopTypes } from "@turbo/gen";
export default function generator(plop: PlopTypes.NodePlopAPI): void {
// create a generator
plop.setGenerator("package", {
description: "Generator description",
// gather information from the user
prompts: [
{
type: "input",
name: "name",
message: "Package name",
},
{
type: "input",
name: "description",
message: "Package description",
},
{
type: "input",
name: "author.name",
message: "Author name",
},
{
type: "input",
name: "author.email",
message: "Author email",
},
{
type: "input",
name: "author.url",
message: "Author URL",
},
],
// perform actions based on the prompts
actions: [
{
type: "addMany",
destination: "packages/{{name}}",
base: "templates/package",
templateFiles: "templates/package/**/*",
abortOnFail: true,
},
],
});
}