{
    "name": "x",
    "version": "1.0.0",
    "description": "This project was bootstrapped with Fastify-CLI.",
    "main": "app.ts",
    "directories": {
        "test": "test"
    },
    "_moduleAliases": {
        "@": "src"
    },
    "scripts": {
        "fc": "fastify cli",
        "test": "jest",
        "test:unit": "tap test/services/**/*.ts",
        "test:integration": "tap test/integration/**/*.ts",
        "test:watch": "jest --watch",
        "test:coverage": "jest --coverage",
        "start": "npm run build:ts && fastify start -l info -r tsconfig-paths/register dist/src/app.js",
        "prebuild": "npm run lint",
        "build:ts": "rimraf dist && tsc",
        "build:frontend:dev": "docker build -t fusero-frontend-dev:local -f frontend/Dockerfile.dev ./frontend", 
        "k8s:dev:apply": "kubectl apply -f k8s/frontend/deployment.dev.yml",
        "k8s:dev:delete": "kubectl delete deployment fusero-frontend-dev 2>/dev/null || true",
        "k8s:dev:run": "kubectl port-forward svc/fusero-frontend-service 3000:80",
        "k8s:dev:describe": "kubectl describe pod -l app=fusero-frontend",
        "k8s:dev:svc": "kubectl describe svc fusero-frontend-service",
        "k8s:dev:deployment": "kubectl describe deployment fusero-frontend-dev",
        "k8s:get": "kubectl get pods,svc,deployment",
        "watch:ts": "tsc -w",
        "dev": "npm run build:ts && concurrently -k -p \"[{name}]\" -n \"TypeScript,App\" -c \"yellow.bold,cyan.bold\" \"npm:watch:ts\" \"npm:dev:start\"",
        "dev:start": "fastify start --ignore-watch=.ts$ -w -l info -P -r tsconfig-paths/register dist/src/app.js",
        "app:generate": "node ./utils/generate-app.js",
        "lint": "eslint src/**/*.{js,jsx,ts,tsx}",
        "lint:fix": "eslint src/**/*.{js,jsx,ts,tsx} --fix",
        "migration:create": "npx mikro-orm migration:create",
        "seed": "ts-node -r tsconfig-paths/register src/database/seeds/run-seed.ts",
        "test:db": "ts-node -r tsconfig-paths/register src/database/test-connection.ts",
        "k8s:exec": "kubectl exec -it $POD_NAME -- /bin/sh"
    },
    "keywords": [],
    "author": "",
    "license": "ISC",
    "dependencies": {
        "@fastify/autoload": "^5.0.0",
        "@fastify/cookie": "^9.3.1",
        "@fastify/cors": "^9.0.1",
        "@fastify/jwt": "^8.0.1",
        "@fastify/postgres": "^5.2.2",
        "@fastify/sensible": "^5.0.0",
        "@fastify/swagger": "^9.2.0",
        "@fastify/swagger-ui": "^4.2.0",
        "@fastify/type-provider-typebox": "^4.1.0",
        "@mikro-orm/cli": "^6.2.1",
        "@mikro-orm/core": "^6.2.1",
        "@mikro-orm/migrations": "^6.2.1",
        "@mikro-orm/postgresql": "^6.2.1",
        "@sentry/node": "^7.112.1",
        "@sentry/profiling-node": "^7.112.1",
        "@sinclair/typebox": "^0.32.35",
        "axios": "^1.6.8",
        "bcrypt": "^5.1.1",
        "dotenv": "^16.4.5",
        "fastify": "^4.26.2",
        "fastify-cli": "^6.1.1",
        "fastify-jwt": "^4.2.0",
        "fastify-plugin": "^4.0.0",
        "glob": "^9.3.5",
        "jsonwebtoken": "^9.0.2",
        "mikro-orm": "^6.2.0",
        "module-alias": "^2.2.3",
        "pg": "^8.11.5",
        "redoc": "^2.2.0",
        "reflect-metadata": "^0.2.2"
    },
    "devDependencies": {
        "@types/bcrypt": "^5.0.2",
        "@types/jest": "^29.5.12",
        "@types/jsonwebtoken": "^9.0.6",
        "@types/node": "^20.12.7",
        "@typescript-eslint/eslint-plugin": "^7.7.0",
        "c8": "^9.0.0",
        "concurrently": "^8.2.2",
        "fastify-tsconfig": "^2.0.0",
        "husky": "^9.1.6",
        "jest": "^29.7.0",
        "lint-staged": "^15.2.10",
        "pino-pretty": "^11.3.0",
        "rimraf": "^5.0.10",
        "tap": "^21.0.1",
        "ts-jest": "^29.1.2",
        "ts-node": "^10.9.2",
        "typescript": "^5.4.5"
    },
    "husky": {
        "hooks": {
            "pre-commit": "lint-staged"
        }
    },
    "lint-staged": {
        "src/**/*.{ts,tsx}": [
            "eslint --fix",
            "git add"
        ]
    }
}
