chore: implement basic build system
This commit is contained in:
11
.editorconfig
Normal file
11
.editorconfig
Normal file
@@ -0,0 +1,11 @@
|
||||
# EditorConfig is awesome: https://EditorConfig.org
|
||||
|
||||
root = true
|
||||
|
||||
[*]
|
||||
indent_style = tab
|
||||
indent_size = 4
|
||||
end_of_line = lf
|
||||
charset = utf-8
|
||||
trim_trailing_whitespace = true
|
||||
insert_final_newline = true
|
||||
6
.gitignore
vendored
Normal file
6
.gitignore
vendored
Normal file
@@ -0,0 +1,6 @@
|
||||
/node_modules/
|
||||
/.turbo/
|
||||
|
||||
/pkgs/*/node_modules/
|
||||
/pkgs/*/dist/
|
||||
/pkgs/*/.turbo/
|
||||
1
.prettierignore
Normal file
1
.prettierignore
Normal file
@@ -0,0 +1 @@
|
||||
/pnpm-lock.yaml
|
||||
3
.prettierrc.json
Normal file
3
.prettierrc.json
Normal file
@@ -0,0 +1,3 @@
|
||||
{
|
||||
"singleQuote": false
|
||||
}
|
||||
17
eslint.config.mjs
Normal file
17
eslint.config.mjs
Normal file
@@ -0,0 +1,17 @@
|
||||
import js from "@eslint/js";
|
||||
import globals from "globals";
|
||||
import tseslint from "typescript-eslint";
|
||||
import { defineConfig } from "eslint/config";
|
||||
|
||||
export default defineConfig([
|
||||
{
|
||||
files: ["**/*.{js,mjs,cjs,ts,mts,cts}"],
|
||||
plugins: { js },
|
||||
extends: ["js/recommended"],
|
||||
},
|
||||
{
|
||||
files: ["**/*.{js,mjs,cjs,ts,mts,cts}"],
|
||||
languageOptions: { globals: { ...globals.browser, ...globals.node } },
|
||||
},
|
||||
tseslint.configs.recommended,
|
||||
]);
|
||||
16
package.json
Normal file
16
package.json
Normal file
@@ -0,0 +1,16 @@
|
||||
{
|
||||
"packageManager": "pnpm@10.12.1",
|
||||
"scripts": {
|
||||
"build": "turbo run build"
|
||||
},
|
||||
"dependencies": {
|
||||
"@eslint/js": "^9.29.0",
|
||||
"@types/node": "^24.0.4",
|
||||
"eslint": "^9.29.0",
|
||||
"globals": "^16.2.0",
|
||||
"prettier": "^3.6.0",
|
||||
"turbo": "^2.5.4",
|
||||
"typescript": "^5.8.3",
|
||||
"typescript-eslint": "^8.35.0"
|
||||
}
|
||||
}
|
||||
9
pkgs/solver/package.json
Normal file
9
pkgs/solver/package.json
Normal file
@@ -0,0 +1,9 @@
|
||||
{
|
||||
"name": "@pow-captcha/solver",
|
||||
"version": "0.0.0",
|
||||
"module": "dist/lib.js",
|
||||
"types": "dist/lib.d.ts",
|
||||
"scripts": {
|
||||
"build": "tsc -p tsconfig.build.json"
|
||||
}
|
||||
}
|
||||
3
pkgs/solver/src/lib.ts
Normal file
3
pkgs/solver/src/lib.ts
Normal file
@@ -0,0 +1,3 @@
|
||||
export function solve(): void {
|
||||
|
||||
}
|
||||
8
pkgs/solver/tsconfig.build.json
Normal file
8
pkgs/solver/tsconfig.build.json
Normal file
@@ -0,0 +1,8 @@
|
||||
{
|
||||
"extends": "../../tsconfig.build.json",
|
||||
"compilerOptions": {
|
||||
"outDir": "dist"
|
||||
},
|
||||
"include": ["src/**/*"],
|
||||
"exclude": ["**/*.spec.ts"]
|
||||
}
|
||||
4
pkgs/solver/tsconfig.json
Normal file
4
pkgs/solver/tsconfig.json
Normal file
@@ -0,0 +1,4 @@
|
||||
{
|
||||
"extends": "../../tsconfig.base.json",
|
||||
"include": ["src/**/*"]
|
||||
}
|
||||
1137
pnpm-lock.yaml
generated
Normal file
1137
pnpm-lock.yaml
generated
Normal file
File diff suppressed because it is too large
Load Diff
2
pnpm-workspace.yaml
Normal file
2
pnpm-workspace.yaml
Normal file
@@ -0,0 +1,2 @@
|
||||
packages:
|
||||
- "pkgs/*"
|
||||
15
tsconfig.base.json
Normal file
15
tsconfig.base.json
Normal file
@@ -0,0 +1,15 @@
|
||||
{
|
||||
"compilerOptions": {
|
||||
"incremental": true,
|
||||
"declaration": true,
|
||||
"noEmit": true,
|
||||
"resolveJsonModule": true,
|
||||
|
||||
"strict": true,
|
||||
"noUncheckedIndexedAccess": true,
|
||||
|
||||
/* Experimental Options */
|
||||
"experimentalDecorators": true,
|
||||
"emitDecoratorMetadata": false
|
||||
}
|
||||
}
|
||||
12
tsconfig.build.json
Normal file
12
tsconfig.build.json
Normal file
@@ -0,0 +1,12 @@
|
||||
{
|
||||
"extends": "./tsconfig.base.json",
|
||||
"compilerOptions": {
|
||||
"incremental": false,
|
||||
"noEmit": false,
|
||||
"target": "es2020",
|
||||
"module": "es2020",
|
||||
"moduleResolution": "bundler",
|
||||
"sourceMap": true,
|
||||
"declarationMap": true
|
||||
}
|
||||
}
|
||||
4
tsconfig.json
Normal file
4
tsconfig.json
Normal file
@@ -0,0 +1,4 @@
|
||||
{
|
||||
"extends": "./tsconfig.base.json",
|
||||
"include": ["**/*", ".*.js"]
|
||||
}
|
||||
18
turbo.json
Normal file
18
turbo.json
Normal file
@@ -0,0 +1,18 @@
|
||||
{
|
||||
"$schema": "https://turbo.build/schema.json",
|
||||
"tasks": {
|
||||
"build": {
|
||||
"dependsOn": ["^build"],
|
||||
"outputs": ["dist/**", "tsconfig.tsbuildinfo"]
|
||||
}
|
||||
},
|
||||
"globalDependencies": [
|
||||
".eslintrc.js",
|
||||
".eslintignore",
|
||||
".lintstagedrc.js",
|
||||
".prettierrc.yaml",
|
||||
"tsconfig.base.json",
|
||||
"tsconfig.build.json",
|
||||
"tsconfig.json"
|
||||
]
|
||||
}
|
||||
Reference in New Issue
Block a user