{ "name": "@neabyte/project-root", "description": "A TypeScript library for detecting project root directories by analyzing file patterns and indicators across multiple programming languages and build systems.", "version": "1.0.0", "type": "module", "main": "./dist/index.js", "types": "./dist/index.d.ts", "exports": { ".": { "import": "./dist/index.js", "require": "./dist/index.js", "types": "./dist/index.d.ts" } }, "files": [ "dist/**/*", "README.md", "LICENSE" ], "keywords": [ "project-root", "project-detection", "file-patterns", "project-indicators", "typescript", "javascript", "nodejs", "package-manager", "lock-files", "yarn", "pnpm", "npm", "go", "rust", "java", "python", "php", "ruby", "dart", "flutter", "swift", "elixir", "clojure", "haskell", "julia", "crystal", "lua", "c", "cpp", "zig", "d", "v", "scala", "ocaml", "erlang", "csharp", "dotnet", "kotlin", "fsharp", "nim", "perl", "r", "ada", "git", "mercurial", "subversion", "bazaar", "fossil", "perforce", "darcs", "monotone", "jujutsu", "pijul", "plastic-scm", "github", "gitlab", "bitbucket", "azure-devops", "vscode", "webpack", "vite", "rollup", "babel", "jest", "eslint", "cmake", "makefile", "gradle", "maven", "composer", "gem", "pip", "cargo", "pub", "mix", "leiningen", "stack", "shard", "luarocks", "build-systems", "version-control", "ci-cd", "development-tools", "build-tools", "monorepo", "workspace", "path-resolution", "project-discovery", "fast-glob", "high-performance" ], "engines": { "node": ">=v18.0.0" }, "license": "MIT", "author": { "name": "NeaByteLab", "email": "me@neabyte.com", "url": "https://github.com/NeaByteLab" }, "repository": { "type": "git", "url": "https://github.com/NeaByteLab/Project-Root.git" }, "homepage": "https://github.com/NeaByteLab/Project-Root#readme", "bugs": { "url": "https://github.com/NeaByteLab/Project-Root/issues" }, "scripts": { "dev": "tsx watch src/index.ts", "clean": "rm -rf dist", "build": "tsc && tsc-alias -f -fe .js && npm run minify", "minify": "find dist -name '*.js' -exec terser {} --compress --mangle -o {} \\;", "start": "node dist/index.js", "lint": "eslint src/**/**/**/*.ts", "lint:fix": "eslint src/**/**/**/*.ts --fix", "format": "prettier --write src/**/**/**/*.ts", "format:check": "prettier --check src/**/**/**/*.ts", "type-check": "tsc --noEmit" }, "devDependencies": { "@types/node": "^24.5.0", "@typescript-eslint/eslint-plugin": "^8.44.0", "@typescript-eslint/parser": "^8.44.0", "eslint": "^9.35.0", "eslint-config-prettier": "^10.1.8", "eslint-plugin-sonarjs": "^3.0.5", "prettier": "^3.6.2", "terser": "^5.44.0", "tsc-alias": "^1.8.16", "tsx": "^4.20.5", "typescript": "^5.9.2" }, "dependencies": { "fast-glob": "^3.3.3" } }