{ "name": "trezor-suite", "version": "1.0.0", "private": true, "repository": "https://github.com/trezor/trezor-suite.git", "license": "SEE LICENSE IN LICENSE.md", "engines": { "node": "24", "yarn": ">=4" }, "workspaces": { "packages": [ "packages/*", "packages/connect-examples/*", "suite-native/*", "suite-common/*", "suite/*", "scripts" ] }, "scripts": { "_______ Hooks _______": "Yarn hooks.", "postinstall": "yarn run patch-package && husky", "_______ Library Scripts #####": "Some libraries have their own build scripts.", "build:libs": "yarn nx run-many --skip-nx-cache --target=build:lib", "build:essential": "yarn message-system-sign-config & yarn workspace @trezor/suite-data build:lib & yarn workspace @trezor/transport-bridge build:lib", "suite:build:web": "yarn workspace @trezor/suite-web build", "suite:build:web:preview": "yarn workspace @trezor/suite-web build:preview", "_______ Start Scripts _______": "Here are standalone scripts for running individual applications for development.", "suite:dev": "yarn workspace @trezor/suite-web dev", "suite:dev:vite": "yarn workspace @trezor/suite-web dev:vite", "suite:dev:desktop": "yarn workspace @trezor/suite-desktop dev", "native:start": "yarn workspace @suite-native/app start", "_______ Testing _______": "Testing, linting, type checking...", "type-check": "yarn nx run-many --target=type-check", "type-check:purge": "rimraf **/libDev", "type-check:force": "yarn type-check:purge && yarn type-check", "test:unit": "yarn nx run-many --target=test:unit", "lint:js": "yarn g:eslint .", "lint:js:fix-files": "yarn g:eslint --fix", "lint:styles": "yarn nx run-many --target=lint:styles", "lint": "yarn lint:styles && yarn lint:js", "lint:shellcheck": "./scripts/shellcheck.sh", "_______ Global Scripts _______": "Shared scripts for running in all workspaces", "g:eslint": "cd $INIT_CWD && eslint --cache --cache-strategy content --flag v10_config_lookup_from_file --max-warnings 0 --concurrency auto", "g:jest": "cd $INIT_CWD && jest", "g:prettier": "cd $INIT_CWD && prettier", "g:rimraf": "cd $INIT_CWD && rimraf", "g:tsc": "cd $INIT_CWD && tsc", "g:tsx": "cd $INIT_CWD && tsx", "g:depcheck": "cd $INIT_CWD && depcheck", "_______ Nx testing _______": "Nx wrapped commands for testing, linting, type checking...", "nx:build:libs": "yarn nx affected --target=build:lib", "nx:type-check": "yarn nx affected --target=type-check", "nx:test-unit": "yarn nx affected --target=test:unit", "nx:test-unit:suite": "yarn nx affected --target=test:unit --exclude='@suite-native/*'", "nx:test-unit:native": "yarn nx affected --target=test:unit --exclude='@trezor/*,@suite/*,@suite-common/*'", "nx:lint:styles": "yarn nx affected --target=lint:styles", "nx:format": "yarn nx format:check", "_______ Commands _______": "Useful commands and scripts.", "patch": "yarn patch-package", "convert-figma-palette": "yarn tsx ./scripts/convertFigmaPalette.ts", "update-project-references": "yarn tsx ./scripts/updateProjectReferences.ts", "verify-project-references": "yarn update-project-references --test", "check-workspace-resolutions": "yarn tsx ./scripts/check-workspace-resolutions.ts", "generate-icons": "yarn workspace @suite-common/icons generate-icons", "generate-package": "yarn workspace @trezor/scripts generate-package", "deps": "rimraf **/node_modules && yarn", "depcheck": "depcheck && yarn nx affected --target=depcheck", "list-outdated": "./scripts/list-outdated-dependencies/list-outdated-dependencies.sh", "message-system-sign-config": "yarn workspace @suite-common/message-system sign-config", "format": "yarn nx format:write", "format:all": "yarn prettier --write \"**/*.{js,ts,tsx,mdx,md,html,json,yml,yaml}\"", "format:verify": "yarn prettier --check \"**/*.{js,ts,tsx,mdx,md,html,json}\"", "update-submodules": "./scripts/update-submodules.sh", "update-coins": "./scripts/update-coins.sh", "update-models": "./scripts/update-models.sh", "update-protobuf": "./scripts/update-protobuf.sh", "update-coinjoin-middleware": "yarn workspace @trezor/suite-data update-coinjoin-middleware", "prepare-desktop-release": "./scripts/prepare-desktop-release.sh", "prepare-mobile-release": "./scripts/prepare-mobile-release.sh", "native:android": "yarn workspace @suite-native/app android", "native:ios": "yarn workspace @suite-native/app ios", "native:prebuild": "yarn workspace @suite-native/app prebuild", "native:prebuild:clean": "yarn workspace @suite-native/app prebuild:clean", "native:adhoc": "yarn workspace @suite-native/app build:adhoc", "native:reverse-ports": "yarn workspace @suite-native/app reverse-ports", "ws": "./scripts/workspace-run.sh", "_______ Aliases _______": "Aliases for longer commands which we often have to run manually. Names don't have to be pretty or make total sense.", "refs": "yarn update-project-references", "types": "yarn type-check", "messages": "yarn message-system-sign-config", "validate": "yarn verify-project-references && yarn lint:js && yarn nx:lint:styles && yarn nx:build:libs && yarn nx:type-check && yarn nx:test-unit && yarn check-workspace-resolutions && yarn depcheck", "a": "yarn native:android", "ios": "yarn native:ios", "p": "yarn native:prebuild", "ports": "yarn native:reverse-ports", "s": "yarn native:start" }, "resolutions": { "typescript": "5.8.3", "prettier": "3.8.1", "react-native": "0.81.5", "type-fest": "4.24.0", "bcrypto": "5.4.0", "react": "19.1.0", "electron": "40.1.0", "@types/node": "22.13.10", "bn.js": "5.2.2", "node-addon-api": "8.5.0", "node-gyp": "12.1.0", "reselect": "5.1.1", "### We need promise to be same version in mobile unless it produces undefined behavior, check PR #15815": "1.0.0", "promise": "8.3.0", "elliptic": "6.6.1", "@headlessui/react": "^2.2.0", "### Align versions of sentry internal packages, because electron & native use different versions of @core": "1.0.0", "@sentry/core": "10.38.0", "@sentry/browser": "10.38.0", "@sentry/react": "10.38.0", "@sentry/types": "10.38.0", "@sentry/node": "10.38.0", "@sentry/node-core": "10.38.0", "expo-build-properties": "~1.0.10" }, "devDependencies": { "@babel/cli": "7.28.6", "@babel/core": "7.28.6", "@babel/node": "^7.28.6", "@babel/plugin-proposal-decorators": "^7.28.6", "@babel/plugin-transform-runtime": "7.28.5", "@babel/preset-env": "7.28.6", "@babel/preset-react": "^7.28.5", "@babel/preset-typescript": "^7.28.5", "@babel/runtime": "7.28.6", "@trezor/eslint": "workspace:*", "@types/jest": "29.5.12", "@types/node": "22.13.10", "@types/node-fetch": "^2.6.12", "babel-jest": "30.0.0", "depcheck": "^1.4.7", "eslint": "^9.39.2", "husky": "^9.1.7", "jest": "29.7.0", "jest-environment-node": "^29.7.0", "jest-expo": "^54.0.12", "node-gyp": "12.1.0", "nx": "^22.4.3", "patch-package": "8.0.1", "prettier": "^3.8.1", "rimraf": "^6.0.1", "ts-node": "^10.9.2", "tslib": "^2.6.2", "tsx": "^4.21.0", "typescript": "5.8.3", "version-bump-prompt": "^6.1.0" }, "dependenciesMeta": { "better-sqlite3": { "built": true }, "core-js-pure": { "built": false }, "electron": { "built": true }, "trezor-suite": { "built": true } }, "packageManager": "yarn@4.10.3" }