Some checks failed
Build and Test YT2AI Bookmarklet / build-and-test (16.x) (push) Has been cancelled
Build and Test YT2AI Bookmarklet / build-and-test (18.x) (push) Has been cancelled
Build and Test YT2AI Bookmarklet / build-and-test (20.x) (push) Has been cancelled
Build and Test YT2AI Bookmarklet / release (push) Has been cancelled
Build and Test YT2AI Bookmarklet / security-scan (push) Has been cancelled
Add project structure with package.json, source code, tests, documentation, and GitHub workflows. 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
118 lines
3.3 KiB
JSON
118 lines
3.3 KiB
JSON
{
|
|
"name": "yt2ai-bookmarklet",
|
|
"version": "1.0.0",
|
|
"description": "YouTube Subtitle Extraction & AI Summarization Bookmarklet for Android Chrome",
|
|
"main": "src/bookmarklet.js",
|
|
"scripts": {
|
|
"test": "jest",
|
|
"test:watch": "jest --watch",
|
|
"test:coverage": "jest --coverage",
|
|
"build": "NODE_ENV=production webpack --config build/webpack.config.js",
|
|
"build:dev": "NODE_ENV=development webpack --config build/webpack.config.js",
|
|
"build:watch": "NODE_ENV=development webpack --config build/webpack.config.js --watch",
|
|
"lint": "eslint src/ tests/ build/",
|
|
"lint:fix": "eslint src/ tests/ build/ --fix",
|
|
"format": "prettier --write src/ tests/ build/",
|
|
"format:check": "prettier --check src/ tests/ build/",
|
|
"dev": "npm run build:dev && echo 'Development build ready in dist/bookmarklet-debug.js'",
|
|
"clean": "rm -rf dist/ coverage/",
|
|
"verify": "npm run lint && npm run format:check && npm run test && npm run build",
|
|
"commit": "cz",
|
|
"release": "semantic-release",
|
|
"release:dry": "semantic-release --dry-run",
|
|
"version": "echo $npm_package_version",
|
|
"prepare": "husky install"
|
|
},
|
|
"keywords": [
|
|
"bookmarklet",
|
|
"youtube",
|
|
"subtitles",
|
|
"ai",
|
|
"mobile",
|
|
"android",
|
|
"chrome"
|
|
],
|
|
"author": "YT2AI Team",
|
|
"license": "MIT",
|
|
"devDependencies": {
|
|
"@babel/core": "^7.22.0",
|
|
"@babel/preset-env": "^7.22.0",
|
|
"@commitlint/cli": "^17.6.6",
|
|
"@commitlint/config-conventional": "^17.6.6",
|
|
"@semantic-release/changelog": "^6.0.3",
|
|
"@semantic-release/commit-analyzer": "^10.0.1",
|
|
"@semantic-release/git": "^10.0.1",
|
|
"@semantic-release/github": "^9.0.3",
|
|
"@semantic-release/npm": "^10.0.4",
|
|
"@semantic-release/release-notes-generator": "^11.0.4",
|
|
"babel-jest": "^29.5.0",
|
|
"babel-loader": "^9.1.0",
|
|
"commitizen": "^4.3.0",
|
|
"core-js": "^3.31.0",
|
|
"cz-conventional-changelog": "^3.3.0",
|
|
"eslint": "^8.42.0",
|
|
"husky": "^8.0.3",
|
|
"jest": "^29.5.0",
|
|
"jest-environment-jsdom": "^29.5.0",
|
|
"prettier": "^2.8.8",
|
|
"semantic-release": "^21.0.7",
|
|
"terser-webpack-plugin": "^5.3.9",
|
|
"webpack": "^5.88.0",
|
|
"webpack-cli": "^5.1.4"
|
|
},
|
|
"jest": {
|
|
"testEnvironment": "jsdom",
|
|
"setupFilesAfterEnv": ["<rootDir>/tests/setup.js"],
|
|
"collectCoverageFrom": [
|
|
"src/**/*.js",
|
|
"!src/**/*.test.js",
|
|
"!src/**/node_modules/**"
|
|
],
|
|
"coverageThreshold": {
|
|
"global": {
|
|
"branches": 70,
|
|
"functions": 70,
|
|
"lines": 70,
|
|
"statements": 70
|
|
}
|
|
},
|
|
"testMatch": [
|
|
"**/tests/**/*.test.js"
|
|
]
|
|
},
|
|
"babel": {
|
|
"presets": ["@babel/preset-env"]
|
|
},
|
|
"eslintConfig": {
|
|
"env": {
|
|
"browser": true,
|
|
"es2021": true,
|
|
"jest": true
|
|
},
|
|
"extends": "eslint:recommended",
|
|
"parserOptions": {
|
|
"ecmaVersion": "latest",
|
|
"sourceType": "module"
|
|
},
|
|
"rules": {
|
|
"no-unused-vars": ["error", { "argsIgnorePattern": "^_" }],
|
|
"no-console": "off",
|
|
"prefer-const": "error"
|
|
}
|
|
},
|
|
"prettier": {
|
|
"semi": true,
|
|
"trailingComma": "es5",
|
|
"singleQuote": true,
|
|
"printWidth": 100,
|
|
"tabWidth": 2
|
|
},
|
|
"config": {
|
|
"commitizen": {
|
|
"path": "./node_modules/cz-conventional-changelog"
|
|
}
|
|
},
|
|
"commitlint": {
|
|
"extends": ["@commitlint/config-conventional"]
|
|
}
|
|
} |