{ "name": "bookstairs", "version": "1.0.0", "private": true, "type": "module", "description": "Yet another ebook library", "keywords": [ "calibre", "ebook", "epub", "mobi" ], "homepage": "https://bookstairs.net", "bugs": { "url": "https://github.com/bookstairs/bookstairs/issues", "email": "syhily@gmail.com" }, "repository": { "type": "git", "url": "https://github.com/bookstairs/bookstairs.git" }, "license": "MIT", "author": { "name": "Yufan Sheng", "email": "syhily@gmail.com", "url": "https://yufan.me" }, "scripts": { "build": "cross-env NODE_ENV=production react-router build", "dev": "react-router dev", "lint": "biome check --write . && prettier . --write", "start": "cross-env NODE_ENV=production react-router-serve ./build/server/index.js", "typecheck": "react-router typegen && tsc" }, "lint-staged": { "**/*": [ "biome check --no-errors-on-unmatched --files-ignore-unknown=true", "prettier --write --ignore-unknown" ] }, "dependencies": { "@react-router/node": "^7.1.1", "@react-router/serve": "^7.1.1", "isbot": "^5.1.18", "react": "^19.0.0", "react-dom": "^19.0.0", "react-router": "^7.1.1" }, "devDependencies": { "@biomejs/biome": "1.9.4", "@react-router/dev": "^7.1.1", "@trivago/prettier-plugin-sort-imports": "^5.2.0", "@types/node": "^22", "@types/react": "^19.0.2", "@types/react-dom": "^19.0.2", "autoprefixer": "^10.4.20", "cross-env": "^7.0.3", "husky": "^9.1.7", "postcss": "^8.4.49", "prettier": "^3.4.2", "tailwindcss": "^3.4.17", "typescript": "^5.7.2", "vite": "^6.0.5", "vite-tsconfig-paths": "^5.1.4" } }