
Security News
Attackers Are Hunting High-Impact Node.js Maintainers in a Coordinated Social Engineering Campaign
Multiple high-impact npm maintainers confirm they have been targeted in the same social engineering campaign that compromised Axios.
@rabithua/xcdev
Advanced tools
A publishable npm CLI for:
xcodebuild, xcrun simctl, xcrun xctrace, and xcrun devicectl)..xcodeproj or .xcworkspace) with a buildable scheme.npm install -g @rabithua/xcdev
The xcdev CLI offers the following commands for managing devices and building/running your iOS project.
xcdev list devices: Lists all available simulator and connected real devices.xcdev list devices sim: Lists only the available iOS simulators.xcdev list devices real: Lists only the currently connected real iOS devices.xcdev list profiles: Displays all the device profiles (e.g., specific simulators or real devices) that you have defined or are available as defaults.You can assign a specific device name or pattern to your default sim and real profiles. This is useful for quickly targeting a preferred device.
xcdev set sim "iPhone Air": Sets the default simulator profile target to a simulator named "iPhone Air".xcdev set sim --version 18.2 "iPhone Air": Sets the default simulator target and preferred iOS runtime version.xcdev set real "Huawei Air": Sets the default real device profile target to a connected device matching "Huawei Air".Builds the project for the specified profile without installing or running it.
xcdev build sim: Compiles the project targeting the default simulator.xcdev build --version 18.2 sim: Compiles the project targeting the default simulator on a matching iOS runtime version.xcdev build real: Compiles the project targeting the default connected real device.Builds (if necessary), installs, and launches the app on the target device.
xcdev run sim: Runs your application on the default simulator. By default, it boots the simulator and opens Simulator.app for the selected device.xcdev run --version 18.2 sim: Runs your application on the default simulator whose runtime contains 18.2.xcdev run real: Runs your application on the default real device.Use xcdev run --no-open-simulator sim if you want to keep the simulator app hidden while still running on the booted device.
(Note: sim and real are recommended default profile names. Any custom profile name, such as office-phone, can be used if defined in .xcdev.env.)
sim / real are recommended default profiles.
Any profile name (such as air, office-phone) is user-defined in .xcdev.env.
If real target is not set, xcdev uses the first connected real device.
The CLI auto-discovers .xcdev.env by searching upward from current directory.
If no config is found, it still works with auto-detected project/scheme and default profiles.
Create .xcdev.env in the project root if you want stable project-specific settings.
You can start from:
templates/.xcdev.env.example
Required keys:
IOS_PROJECTIOS_SCHEMECommon optional keys:
IOS_CONFIGURATIONIOS_BUNDLE_IDIOS_SIM_VERSIONIOS_PROFILE_<NAME>_MODEIOS_PROFILE_<NAME>_TARGETIOS_PROFILE_<NAME>_VERSIONIOS_OPEN_SIMULATOR (YES by default; set to NO to avoid opening Simulator.app during run)Example:
IOS_PROFILE_SIM_MODE="sim"
IOS_PROFILE_SIM_TARGET="iPhone"
IOS_PROFILE_SIM_VERSION="18.2"
IOS_PROFILE_REAL_MODE="real"
IOS_PROFILE_REAL_TARGET=".*"
FAQs
Reusable iOS CLI for listing devices and building/running Xcode projects
The npm package @rabithua/xcdev receives a total of 338 weekly downloads. As such, @rabithua/xcdev popularity was classified as not popular.
We found that @rabithua/xcdev demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Security News
Multiple high-impact npm maintainers confirm they have been targeted in the same social engineering campaign that compromised Axios.

Security News
Axios compromise traced to social engineering, showing how attacks on maintainers can bypass controls and expose the broader software supply chain.

Security News
Node.js has paused its bug bounty program after funding ended, removing payouts for vulnerability reports but keeping its security process unchanged.