
Security News
Happy Birthday, Shai-Hulud
It has been one year since Shai-Hulud made its first appearance on npm.
@thrustcurve/api1
Advanced tools
A TypeScript client for the ThrustCurve.org API. This client provides type-safe access to the ThrustCurve.org motor and simulator file database.
For details, see the API documentation.
npm install @thrustcurve/api1
First, import and instantiate the API client:
import { ThrustCurveAPI } from '@thrustcurve/api1';
const api = new ThrustCurveAPI();
// Get metadata for all motors
const metadata = await api.metadata();
// Get metadata for motors that match the criteria
const filteredMetadata = await api.metadata({
manufacturer: 'Estes',
impulseClass: 'C',
type: 'SU'
});
const searchResults = await api.searchMotors({
manufacturer: 'Estes',
impulseClass: 'C',
diameter: 18,
type: 'SU',
availability: 'regular'
});
const motorData = await api.downloadMotorData({
motorIds: ['5f4294d20002310000000015'],
format: 'RASP',
data: 'both'
});
// Get rockets from account
const rockets = await api.getRockets({
username: 'user@example.com',
password: 'password'
});
// Save rockets to account
const savedRockets = await api.saveRockets({
username: 'user@example.com',
password: 'password',
rockets: [{
name: 'Alpha III',
bodyDiameterM: 0.025,
mmtDiameterMm: 18,
mmtLengthMm: 70,
weightKg: 0.045,
cd: 0.25,
guideLengthM: 1.0
}]
});
const recommendations = await api.motorGuide({
rocket: {
name: 'Alpha III',
bodyDiameterM: 0.025,
mmtDiameterMm: 18,
mmtLengthMm: 70,
weightKg: 0.045,
cd: 0.25,
guideLengthM: 1.0
},
manufacturer: 'Estes',
type: 'SU',
availability: 'regular'
});
The API client throws errors for non-200 responses. You should wrap API calls in try/catch blocks:
try {
const data = await api.searchMotors({ /* ... */ });
} catch (error) {
console.error('API request failed:', error);
}
The client provides the following methods:
metadata(params?: MetadataRequest): Get metadata about motorssearchMotors(criteria: SearchRequest): Search for motorsdownloadMotorData(request: DownloadRequest): Download motor data filesgetRockets(credentials: GetRocketsRequest): Get saved rocketssaveRockets(request: SaveRocketsRequest): Save rocketsmotorGuide(request: MotorGuideRequest): Get motor recommendationsSee the TypeScript type definitions for detailed parameter and response types and for details, see the API documentation.
This software is licensed under the ISC license; see LICENSE for more info.
FAQs
TypeScript client for the ThrustCurve.org API
We found that @thrustcurve/api1 demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.

Security News
It has been one year since Shai-Hulud made its first appearance on npm.

Research
/Security News
Operators behind PolinRider used a compromised GitHub account to plant malware in four development versions of a Packagist package with 700,000+ downloads.

Security News
GitHub Actions now supports cache-mode, a least-privilege control on the Actions cache aimed at the cache poisoning technique behind recent compromises.