
Research
2025 Report: Destructive Malware in Open Source Packages
Destructive malware is rising across open source registries, using delays and kill switches to wipe code, break builds, and disrupt CI/CD.
A lightweight JavaScript library for common string manipulations. DecaString provides simple yet powerful methods for reversing, randomizing, case manipulation, and capitalization of strings.
Using npm:
npm install decastring
Using yarn:
yarn add decastring
const DecaString = require('decastring');
// Or using ES modules
import DecaString from 'decastring';
const str = "HelloWorld";
// Reverse a string
console.log(DecaString.reverseString(str));
// Output: "dlroWolleH"
// Randomize character order
console.log(DecaString.randomizeString(str));
// Output: "lWroHlodle" (random order)
// Randomize character cases
console.log(DecaString.randomCaseString(str));
// Output: "hElLoWoRlD" (random case for each character)
// Capitalize first letter
console.log(DecaString.capitalizeString("hello world"));
// Output: "Hello world"
DecaString.reverseString(s)Reverses the given string.
Parameters:
s (string): The string to reverseReturns:
Example:
DecaString.reverseString("hello"); // Returns: "olleh"
DecaString.randomizeString(s)Randomizes the order of characters in the given string.
Parameters:
s (string): The string to randomizeReturns:
Example:
DecaString.randomizeString("hello"); // Returns: e.g., "lehol"
DecaString.randomCaseString(s)Applies random casing to each character in the string.
Parameters:
s (string): The string to randomize caseReturns:
Example:
DecaString.randomCaseString("hello"); // Returns: e.g., "hElLo"
DecaString.capitalizeString(s)Capitalizes the first character of the string and makes the rest lowercase.
Parameters:
s (string): The string to capitalizeReturns:
Example:
DecaString.capitalizeString("hello world"); // Returns: "Hello world"
All methods perform type checking and will throw a TypeError if the input is not a string:
try {
DecaString.reverseString(123); // Throws TypeError
} catch (error) {
console.error(error.message); // "Input must be a string"
}
DecaString includes TypeScript type definitions out of the box:
import DecaString from 'decastring';
const reversed: string = DecaString.reverseString("hello");
Contributions are welcome! Please feel free to submit a Pull Request. For major changes, please open an issue first to discuss what you would like to change.
git checkout -b feature/AmazingFeature)git commit -m 'Add some AmazingFeature')git push origin feature/AmazingFeature)npm test
This project is licensed under the MIT License - see the LICENSE file for details.
Tom Tarpey
FAQs
A npm package to manipulate strings
We found that decastring 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.

Research
Destructive malware is rising across open source registries, using delays and kill switches to wipe code, break builds, and disrupt CI/CD.

Security News
Socket CTO Ahmad Nassri shares practical AI coding techniques, tools, and team workflows, plus what still feels noisy and why shipping remains human-led.

Research
/Security News
A five-month operation turned 27 npm packages into durable hosting for browser-run lures that mimic document-sharing portals and Microsoft sign-in, targeting 25 organizations across manufacturing, industrial automation, plastics, and healthcare for credential theft.