{
  "name": "@wangjs-jacky/interactive-tutorial",
  "version": "0.1.1",
  "description": "基于 React + Vite + MDX 的交互式教程框架，支持进度持久化与主题切换",
  "type": "module",
  "main": "./dist/index.js",
  "types": "./dist/index.d.ts",
  "bin": {
    "interactive-tutorial": "./bin/interactive-tutorial"
  },
  "files": [
    "bin/",
    "cli/",
    "src/",
    "dist/",
    "index.html",
    "vite.config.ts",
    "tailwind.config.js",
    "postcss.config.js",
    "tsconfig.json"
  ],
  "publishConfig": {
    "access": "public"
  },
  "engines": {
    "node": ">=18.0.0"
  },
  "keywords": [
    "tutorial",
    "interactive",
    "mdx",
    "react",
    "vite",
    "cli"
  ],
  "author": "wangjs-jacky",
  "license": "MIT",
  "repository": {
    "type": "git",
    "url": "https://github.com/wangjs-jacky/interactive-tutorial-framework.git"
  },
  "scripts": {
    "dev": "vite",
    "build": "tsc && vite build",
    "lint": "eslint . --ext ts,tsx --report-unused-disable-directives --max-warnings 0",
    "preview": "vite preview",
    "cli": "node ./cli/itf-cli.mjs",
    "tutorial:serve": "node ./cli/itf-cli.mjs serve ./content",
    "tutorial:build": "node ./cli/itf-cli.mjs build ./content --output ./dist",
    "test": "vitest run",
    "test:cli": "node --test tests/cli/*.test.mjs",
    "test:unit": "vitest run",
    "test:unit:watch": "vitest",
    "test:unit:coverage": "vitest run --coverage"
  },
  "dependencies": {
    "@fontsource/dm-sans": "^5.2.8",
    "@fontsource/inter": "^5.2.8",
    "@fontsource/jetbrains-mono": "^5.2.8",
    "lucide-react": "^0.577.0",
    "prism-react-renderer": "^2.3.1",
    "react": "^18.2.0",
    "react-dom": "^18.2.0",
    "react-router-dom": "^7.13.2",
    "zustand": "^4.5.2"
  },
  "devDependencies": {
    "@mdx-js/react": "^3.0.1",
    "@mdx-js/rollup": "^3.0.1",
    "@playwright/test": "^1.58.2",
    "@testing-library/jest-dom": "^6.9.1",
    "@testing-library/react": "^14.3.1",
    "@types/react": "^18.2.66",
    "@types/react-dom": "^18.2.22",
    "@vitejs/plugin-react": "^4.2.1",
    "@vitest/coverage-v8": "^4.1.0",
    "autoprefixer": "^10.4.18",
    "glob": "^10.3.10",
    "gray-matter": "^4.0.3",
    "identity-obj-proxy": "^3.0.0",
    "jsdom": "^29.0.1",
    "playwright": "^1.58.2",
    "postcss": "^8.4.35",
    "remark-frontmatter": "^5.0.0",
    "remark-gfm": "^4.0.1",
    "remark-mdx-frontmatter": "^5.2.0",
    "tailwindcss": "^3.4.1",
    "ts-node": "^10.9.2",
    "typescript": "^5.4.2",
    "vite": "^5.2.0",
    "vitest": "^4.1.0"
  }
}
