| name | 1k-dev-commands |
| description | Development commands — yarn scripts for dev servers, building, linting, testing, and troubleshooting. |
| allowed-tools | Bash, Read |
OneKey Development Commands
Application Development Commands
PLATFORM-SPECIFIC DEVELOPMENT:
-
yarn app:desktop:rspack - Start desktop Electron app development
- Runtime: 30-60 seconds to start
- Common issues: Node version conflicts, missing native dependencies
- Troubleshooting: Run
yarn clean && yarn reinstall if startup fails
-
yarn app:web:rspack - Start web development server (port 3000)
- Runtime: 15-30 seconds to start
- Common issues: Port 3000 already in use, rspack compilation errors
- Troubleshooting: Kill existing processes on port 3000, check console for specific errors
-
yarn app:ext:rspack - Start browser extension development
- Runtime: 20-40 seconds to start
- Common issues: Manifest v3 validation errors, permission issues
- Troubleshooting: Check extension manifest validity, verify content security policy
-
yarn app:ios - Start iOS mobile development
- Runtime: 1-2 minutes (includes Metro bundler)
- Common issues: Xcode setup, simulator issues, pod install failures
- Prerequisites: Xcode installed, iOS simulator available
-
yarn app:android - Start Android mobile development
- Runtime: 1-2 minutes (includes Metro bundler)
- Common issues: Android SDK path, emulator setup, gradle build failures
- Prerequisites: Android Studio, SDK tools, emulator configured
-
yarn app:web-embed - Start embeddable components development
- Runtime: 15-30 seconds
- Usage: For developing standalone wallet components
Build Commands
PRODUCTION BUILDS (Use for final validation):
-
yarn app:desktop:build - Build desktop app for all platforms
- Runtime: 5-10 minutes (multi-platform build)
- Output: Platform-specific installers in
apps/desktop/dist/
- Common issues: Code signing, platform-specific dependencies
- Verification: Test installers on target platforms
-
yarn app:ext:build - Build browser extension
- Runtime: 2-3 minutes
- Output: Extension packages in
apps/ext/dist/
- Common issues: Manifest validation, content security policy violations
- Verification: Load extension in browser for testing
-
yarn app:web:build - Build web application
- Runtime: 3-5 minutes
- Output: Static files in
apps/web/dist/
- Common issues: Bundle size limits, missing environment variables
- Verification: Serve built files and test functionality
-
yarn app:native-bundle - Bundle React Native app
- Runtime: 3-5 minutes
- Output: Platform-specific bundles
- Common issues: Native module linking, Metro bundler errors
- Prerequisites: Platform development environment properly configured
Development Tools & Quality Assurance
Pre-commit Commands (Local Development)
Use these for fast pre-commit validation:
yarn lint:staged - Lint only staged files (fast, recommended for pre-commit)
yarn tsc:staged - Type check (same as tsc:only)
Pre-commit workflow:
yarn lint:staged && yarn tsc:staged && git commit -m "your message"
CI Commands (Full Project Check)
These run in CI pipeline or for comprehensive validation:
yarn lint - Comprehensive linting (TypeScript, ESLint, folder structure, i18n)
- Expected runtime: ~1 minute
- Zero tolerance: ALL warnings and errors MUST be fixed
- Use case: CI pipeline and comprehensive pre-PR checks
yarn test - Jest test execution
- Use case: CI pipeline and test validation
Other Tools
yarn clean - Clean all build artifacts and node_modules
yarn reinstall - Full clean install (use when dependency issues occur)
Testing
- Jest configuration in
jest.config.js
- Test setup in
jest-setup.js
- Tests located in
@tests/ directories within packages
- Mobile tests use
jest-expo preset