
Security News
Socket Releases Free Certified Patches for Critical vm2 Sandbox Escape
A critical vm2 sandbox escape can allow untrusted JavaScript to break isolation and execute commands on the host Node.js process.
@harmonograph/xy
Advanced tools
👩‍🎨 Generate a harmonographs X and Y coordinates
npm install @harmonograph/xy
The harmonograph is a mechanical apparatus that uses pendulums to create a geometric image. This function uses the drawing time, size and pendulums to create X and Y coordinates for a harmonograph.
If you wish to draw the harmonograph for use on a website you can use @harmonograph/svg or @harmonograph/canvas.
const generateHarmonographXY = require('@harmonograph/xy');
const harmonograph = generateHarmonographXY(
150,
700,
[{
amplitude: 200, frequency: 2.985, phase: 2.054, damping: 0.001
},
{
amplitude: 200, frequency: 3.006, phase: 1.820, damping: 0.008
},
{
amplitude: 200, frequency: 3.003, phase: 2.283, damping: 0.001
},
{
amplitude: 200, frequency: 1.994, phase: 1.155, damping: 0.001
}]
);
This returns an object containing an array of X and Y coordinates. When drawn these points create a harmonograph.
{
x: [1, 2, 3],
y: [1, 3, 9]
}
const generateHarmonographXY = require('@harmonograph/xy');
const {randomPendulums} = require('@harmonograph/xy');
const harmonograph = generateHarmonographXY(150, 700, randomPendulums());
| Option | Description | Default value | Type |
|---|---|---|---|
| drawingTime | How long the pendulum swings in seconds | 150 | number |
| size | The size of the svg | 700 | number |
| pendulums | Two pendulums require four items ( x, y and x, y ). Each X and Y value is an object that contains amplitude, frequency, phase, and damping ( see pendulum options below ) | random values | array |
| Parameter | Description | Default value | Type |
|---|---|---|---|
| pendulum.amplitude | How far a pendulum swings back and forth, must be from 0 - 360 degrees | random number | number |
| pendulum.frequency | How fast a pendulum swings back and forth, for best results use decimal values around 2 and 3 | random number | number |
| pendulum.phase | The rate that a pendulum loses its energy, or slows down, must be from 0 to π | random number | number |
| pendulum.damping | The offset from the normal starting position of a pendulum, must be from 0 to 0.01 | random number | number |
FAQs
Generate a harmonographs X and Y coordinates
We found that @harmonograph/xy 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.
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
A critical vm2 sandbox escape can allow untrusted JavaScript to break isolation and execute commands on the host Node.js process.

Research
Five malicious NuGet packages impersonate Chinese .NET libraries to deploy a stealer targeting browser credentials, crypto wallets, SSH keys, and local files.

Security News
pnpm 11 turns on a 1-day Minimum Release Age and blocks exotic subdeps by default, adding safeguards against fast-moving supply chain attacks.