@jetstart/shared
v1.7.0
Published
Shared types, protocols, and utilities for JetStart
Maintainers
Readme
@jetstart/shared
Shared types, protocols, and utilities for the JetStart ecosystem.
Overview
This package contains common code shared across all JetStart packages:
- Types: TypeScript interfaces and type definitions
- Protocols: WebSocket message protocols and event systems
- Utils: Validation functions and constants
Usage
import {
Session,
SessionStatus,
BuildConfig,
LogLevel,
ClientMessage,
CoreMessage,
isValidSessionId,
DEFAULT_CORE_PORT,
} from '@jetstart/shared';Structure
src/
├── types/ # Type definitions
│ ├── session.ts # Session management types
│ ├── build.ts # Build system types
│ ├── device.ts # Device information types
│ └── log.ts # Logging types
├── protocols/ # Communication protocols
│ ├── websocket.ts # WebSocket messages
│ └── events.ts # Event system
└── utils/ # Utilities
├── validation.ts # Validation functions
└── constants.ts # Shared constantsKey Types
Session Management
Session- Development session stateSessionStatus- Connection status enumSessionToken- Authentication tokenQRCodeData- QR code payload
Build System
BuildConfig- Build configurationBuildResult- Build outputBuildStatus- Build progressAPKInfo- APK metadata
Device Information
DeviceInfo- Device detailsPlatform- Platform enumArchitecture- CPU architecture
Logging
LogEntry- Log message structureLogLevel- Log severity levelsLogSource- Log origin
Protocols
WebSocket Messages
Client → Core:
client:connect- Initial connectionclient:status- Status updateclient:log- Log messageclient:heartbeat- Keep-alive
Core → Client:
core:connected- Connection confirmedcore:build-start- Build startedcore:build-status- Build progresscore:build-complete- Build finishedcore:build-error- Build failedcore:reload- Trigger reload
Validation
import { isValidSessionId, isValidProjectName } from '@jetstart/shared';
if (isValidSessionId(sessionId)) {
// Valid session ID
}
if (isValidProjectName(name)) {
// Valid project name
}Constants
import { DEFAULT_CORE_PORT, JETSTART_VERSION } from '@jetstart/shared';
console.log(`JetStart v${JETSTART_VERSION}`);
console.log(`Core server on port ${DEFAULT_CORE_PORT}`);License
Apache-2.0