{
  "name": "subcodex",
  "version": "0.0.4",
  "description": "Lenguaje de programación en español simple, educativo y brutal: SubCodeX 0.0.4 versión estable",
  "main": "dist/index.js",
  "module": "dist/index.js",
  "types": "dist/index.d.ts",
  "type": "module",
  "engines": {
    "node": ">=18.0.0",
    "npm": ">=8.0.0"
  },
  "scripts": {
    "start": "node dist/index.js",
    "dev": "nodemon --watch src --ext ts --exec \"tsx index.ts\"",
    "build": "tsc && chmod +x dist/index.js && npm run build:copy-assets",
    "build:copy-assets": "cp -r src/assets dist/ 2>/dev/null || true",
    "build:watch": "tsc --watch",
    "clean": "rimraf dist coverage .tsbuildinfo",
    "test": "jest --passWithNoTests",
    "test:watch": "jest --watch",
    "test:coverage": "jest --coverage",
    "lint": "eslint src/**/*.ts",
    "lint:fix": "eslint src/**/*.ts --fix",
    "format": "prettier --write \"src/**/*.{ts,js,json}\"",
    "format:check": "prettier --check \"src/**/*.{ts,js,json}\"",
    "typecheck": "tsc --noEmit",
    "prepare": "husky install",
    "prepublishOnly": "npm run clean && npm run build && npm run test",
    "subcodex": "node dist/index.js"
  },
  "bin": {
    "subcodex": ".dist/index.js"
  },
  "files": [
    "dist/**/*",
    "docs/README.md",
    "LICENSE",
    "package.json"
  ],
  "keywords": [
    "lenguaje-programacion",
    "subcodex",
    "español",
    "educativo",
    "parser",
    "lexer",
    "typescript",
    "chevrotain",
    "interprete",
    "compilador",
    "dsl",
    "programming-language",
    "spanish"
  ],
  "author": {
    "name": "Subcero",
    "email": "subceroplay@gmail.com",
    "url": "https://github.com/subcero232117"
  },
  "license": "MIT",
  "repository": {
    "type": "git",
    "url": "https://github.com/subcero232112"
  },
  "bugs": {
    "url": "https://github.com/subcero232117"
  },
  "homepage": "https://github.com/subcero/subcodex#readme",
  "dependencies": {
    "@cspell/dict-bash": "^4.2.1",
    "@types/chalk-animation": "^1.6.3",
    "@types/configstore": "^6.0.2",
    "@types/d3-path": "^3.1.1",
    "@types/figlet": "^1.7.0",
    "bash-parser": "^0.5.0",
    "bash-path": "^2.0.1",
    "chalk": "^5.3.0",
    "chalk-animation": "^2.0.3",
    "chevrotain": "^11.0.3",
    "commander": "^12.0.0",
    "configstore": "^7.0.0",
    "figlet": "^1.8.2",
    "gradient-string": "^3.0.0",
    "inquirer": "^9.2.15",
    "nanospinner": "^1.2.2",
    "path": "^0.12.7",
    "path-exists": "^5.0.0"
  },
  "devDependencies": {
    "@types/inquirer": "^9.0.7",
    "@types/jest": "^29.5.12",
    "@types/node": "^20.11.30",
    "@typescript-eslint/eslint-plugin": "^7.1.1",
    "@typescript-eslint/parser": "^7.1.1",
    "eslint": "^8.57.0",
    "eslint-config-prettier": "^9.1.0",
    "eslint-plugin-prettier": "^5.1.3",
    "husky": "^9.0.11",
    "jest": "^29.7.0",
    "lint-staged": "^15.2.2",
    "nodemon": "^3.0.2",
    "prettier": "^3.2.5",
    "rimraf": "^5.0.5",
    "ts-jest": "^29.1.2",
    "ts-node": "^10.9.2",
    "tsx": "^4.20.3",
    "typescript": "^5.4.5"
  },
  "peerDependencies": {
    "typescript": ">=4.5.0"
  },
  "lint-staged": {
    "*.{ts,js}": [
      "eslint --fix",
      "prettier --write"
    ],
    "*.{json,md}": [
      "prettier --write"
    ]
  },
  "husky": {
    "hooks": {
      "pre-commit": "lint-staged",
      "pre-push": "npm run typecheck && npm run test"
    }
  },
  "jest": {
    "preset": "ts-jest",
    "testEnvironment": "node",
    "roots": [
      "<rootDir>/src"
    ],
    "testMatch": [
      "**/__tests__/**/*.ts",
      "**/?(*.)+(spec|test).ts"
    ],
    "collectCoverageFrom": [
      "src/**/*.ts",
      "!src/**/*.d.ts",
      "!src/**/*.test.ts",
      "!src/**/*.spec.ts"
    ]
  },
  "prettier": {
    "semi": true,
    "trailingComma": "es5",
    "singleQuote": true,
    "printWidth": 80,
    "tabWidth": 2
  },
  "eslintConfig": {
    "extends": [
      "@typescript-eslint/recommended",
      "prettier"
    ],
    "parser": "@typescript-eslint/parser",
    "plugins": [
      "@typescript-eslint",
      "prettier"
    ],
    "rules": {
      "prettier/prettier": "error",
      "@typescript-eslint/no-unused-vars": "error",
      "@typescript-eslint/no-explicit-any": "warn"
    }
  },
  "nodemonConfig": {
    "ext": "ts",
    "ignore": [
      "dist/",
      "node_modules/"
    ],
    "watch": [
      "src/"
    ],
    "exec": "tsx index.ts"
  }
}