60 lines
1.9 KiB
JSON
60 lines
1.9 KiB
JSON
{
|
|
"name": "ai.interactive.fiction",
|
|
"version": "1.0.0",
|
|
"description": "A modern take on classic text adventures that combines traditional world modeling with Large Language Models (LLMs) to create natural language interactive fiction experiences.",
|
|
"main": "index.js",
|
|
"scripts": {
|
|
"check:node": "node scripts/check-node-version.js",
|
|
"prestart": "npm run check:node",
|
|
"start": "node dist/index.js",
|
|
"prestart:web": "npm run check:node",
|
|
"start:web": "node dist/index.js",
|
|
"prestart:cli": "npm run check:node",
|
|
"start:cli": "node dist/index.js --cli",
|
|
"predev": "npm run check:node",
|
|
"dev": "nodemon --watch src --ext ts,json --exec \"ts-node src/index.ts\"",
|
|
"predev:web": "npm run check:node",
|
|
"dev:web": "nodemon --watch src --ext ts,json --exec \"ts-node src/index.ts\"",
|
|
"predev:cli": "npm run check:node",
|
|
"dev:cli": "nodemon --watch src --ext ts,json --exec \"ts-node src/index.ts --cli\"",
|
|
"pretest-server": "npm run check:node",
|
|
"test-server": "ts-node src/test-server.ts",
|
|
"build": "tsc",
|
|
"test": "jest",
|
|
"lint": "eslint --ext .ts src/",
|
|
"lint:fix": "eslint --ext .ts src/ --fix"
|
|
},
|
|
"engines": {
|
|
"node": ">=18.17"
|
|
},
|
|
"keywords": [],
|
|
"author": "",
|
|
"license": "ISC",
|
|
"type": "commonjs",
|
|
"devDependencies": {
|
|
"@types/express": "^5.0.1",
|
|
"@types/jest": "^29.5.14",
|
|
"@types/js-yaml": "^4.0.9",
|
|
"@types/node": "^22.13.14",
|
|
"@typescript-eslint/eslint-plugin": "^8.29.0",
|
|
"@typescript-eslint/parser": "^8.29.0",
|
|
"eslint": "^9.23.0",
|
|
"jest": "^29.7.0",
|
|
"nodemon": "^3.1.9",
|
|
"ts-jest": "^29.3.1",
|
|
"ts-node": "^10.9.2",
|
|
"typescript": "^5.8.2"
|
|
},
|
|
"dependencies": {
|
|
"axios": "^1.8.4",
|
|
"cors": "^2.8.5",
|
|
"dotenv": "^16.4.7",
|
|
"express": "^5.1.0",
|
|
"hyphenopoly": "^6.0.0",
|
|
"js-yaml": "^4.1.0",
|
|
"kokoro-js": "^1.2.0",
|
|
"openai": "^4.91.0",
|
|
"socket.io": "^4.8.1"
|
|
}
|
|
}
|