{ "name": "koodo-reader", "main": "main.js", "version": "1.2.4", "description": "An open-source eBook reader ", "author": { "name": "App by Troye", "email": "guo362429@gmail.com" }, "engines": { "node": ">=10.0.0", "npm": ">=6.0.0" }, "repository": "https://github.com/troyeguo/koodo-reader", "private": true, "dependencies": { "adm-zip": "^0.5.2", "axios": "^0.19.2", "chardet": "^1.3.0", "copy-text-to-clipboard": "^2.2.0", "electron-is-dev": "^1.1.0", "font-list": "^1.2.11", "fs-extra": "^9.1.0", "i18next": "^19.4.4", "iconv-lite": "^0.6.2", "md5": "^2.3.0", "nodepub": "^2.2.0", "rc-color-picker": "^1.2.6", "react-device-detect": "^1.12.1", "react-dropzone": "^11.3.0", "react-i18next": "9.0.10", "react-lottie": "^1.2.3", "react-router-dom": "^5.2.0", "request": "^2.88.2", "underscore": "^1.11.0", "webdav": "^3.6.2", "zip-a-folder": "^0.0.12" }, "scripts": { "analyze": "source-map-explorer 'build/static/js/*.js'", "start": "react-scripts start", "build": "react-scripts build", "test": "react-scripts test", "eject": "react-scripts eject", "ele": "electron .", "dev": "concurrently \"cross-env BROWSER=none npm start\" \"wait-on http://localhost:3000/ && nodemon --watch ./main.js --exec electron .\"", "pack": "electron-builder --dir", "release": "electron-builder ", "prerelease": "npm run build", "prepack": "npm run build", "dist": "electron-builder" }, "homepage": "./", "build": { "appId": "xyz.960960.koodo", "productName": "Koodo Reader", "copyright": "Copyright (c) 2020-2021 ${author}", "files": [ "build/**/*", "node_modules/**/*", "package.json", "main.js" ], "directories": { "buildResources": "assets" }, "publish": { "provider": "github" }, "fileAssociations": [ { "ext": "epub", "role": "Viewer", "icon": "assets/icons/epub", "mimeType": "application/epub+zip" }, { "ext": "pdf", "role": "Viewer", "icon": "assets/icons/pdf", "mimeType": "application/pdf" }, { "ext": "mobi", "role": "Viewer", "icon": "assets/icons/mobi", "mimeType": "application/x-mobipocket-ebook" }, { "ext": "azw3", "role": "Viewer", "icon": "assets/icons/azw3", "mimeType": "application/vnd.amazon.ebook" }, { "ext": "txt", "role": "Viewer", "icon": "assets/icons/txt", "mimeType": "text/plain" } ], "extends": null, "dmg": { "contents": [ { "x": 410, "y": 150, "type": "link", "path": "/Applications" }, { "x": 130, "y": 150, "type": "file" } ] }, "mac": { "target": [ { "target": "dmg", "arch": [ "x64", "arm64" ] } ], "icon": "assets/icons/icon.icns", "category": "public.app-category.productivity", "artifactName": "${productName}-${version}-${arch}.${ext}" }, "win": { "target": [ { "target": "nsis", "arch": [ "ia32" ] }, { "target": "zip", "arch": [ "ia32" ] }, { "target": "portable", "arch": [ "ia32" ] } ], "icon": "assets/icons/icon.ico", "artifactName": "${productName}-${version}.${ext}", "publisherName": "App by Troye" }, "linux": { "icon": "assets/icons", "category": "Office", "target": [ { "target": "AppImage" }, { "target": "deb" }, { "target": "snap" }, { "target": "rpm" } ] }, "portable": { "artifactName": "${productName}-${version}-Portable.${ext}" }, "nsis": { "oneClick": false, "allowToChangeInstallationDirectory": true, "deleteAppDataOnUninstall": true }, "snap": { "publish": [ { "provider": "github" }, { "provider": "snapStore", "channel": "edge" } ] } }, "eslintConfig": { "extends": "react-app" }, "browserslist": { "production": [ ">0.2%", "not dead", "not op_mini all" ], "development": [ "last 1 chrome version", "last 1 firefox version", "last 1 safari version" ] }, "babel": { "presets": [ "react-app" ], "plugins": [ [ "react-hot-loader/babel" ] ] }, "devDependencies": { "@testing-library/jest-dom": "^4.2.4", "@testing-library/react": "^9.3.2", "@testing-library/user-event": "^7.1.2", "@types/file-saver": "^2.0.1", "@types/i18next": "^13.0.0", "@types/jest": "^25.2.1", "@types/md5": "^2.2.0", "@types/node": "^13.13.2", "@types/react": "^16.9.34", "@types/react-dom": "^16.9.6", "@types/react-i18next": "^8.1.0", "@types/react-redux": "^7.1.7", "@types/react-router-dom": "^5.1.6", "@types/spark-md5": "^3.0.2", "@types/underscore": "^1.10.24", "classnames": "^2.2.6", "concurrently": "^5.0.1", "cross-env": "^6.0.3", "electron": "11.4.1", "electron-builder": "^22.10.5", "electron-is-dev": "^1.1.0", "file-saver": "^2.0.2", "html-react-parser": "^0.13.0", "localforage": "^1.7.3", "node-sass": "^4.13.0", "nodemon": "^2.0.6", "react": "^17.0.2", "react-dom": "^17.0.2", "react-hot-loader": "^4.12.21", "react-redux": "^7.2.0", "react-scripts": "^4.0.3", "redux": "^4.0.5", "redux-thunk": "^2.3.0", "sass-loader": "^8.0.0", "source-map-explorer": "^2.5.2", "spark-md5": "^3.0.1", "typescript": "^3.8.3", "wait-on": "^3.3.0" } }