
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.
Check HTML and CSS Feature Support for Email Clients from caniemail.com
The packages requires an LTS Node version (v20.19.0+)
Install the package from npm using your favourite package manager:
pnpm add caniemail
# bun add caniemail
# yarn add caniemail
# npm add caniemail
Returns:
interface CanIEmailResult {
issues: FeatureIssues;
success: boolean;
}
optionsType: CanIEmailOptions
interface CanIEmailOptions {
/**
An array of client names or globs to match email clients.
Example: ['gmail.android', 'outlook.*', '*.ios']
*/
clients: EmailClientGlobs[];
css?: string;
html?: string;
}
clientsType: EmailClientGlobs[]
Required: true
An array of globs for matching email clients to be checked against CanIEmail data. For more information about the glob syntax that is used, refer to the micromatch documentation.
To match all clients, pass ['*'].
Possible email clients:
[
'apple-mail.macos',
'apple-mail.ios',
'gmail.desktop-webmail',
'gmail.ios',
'gmail.android',
'gmail.mobile-webmail',
'orange.desktop-webmail',
'orange.ios',
'orange.android',
'outlook.windows',
'outlook.windows-mail',
'outlook.macos',
'outlook.ios',
'outlook.android',
'yahoo.desktop-webmail',
'yahoo.ios',
'yahoo.android',
'aol.desktop-webmail',
'aol.ios',
'aol.android',
'samsung-email.android',
'sfr.desktop-webmail',
'sfr.ios',
'sfr.android',
'thunderbird.macos',
'protonmail.desktop-webmail',
'protonmail.ios',
'protonmail.android',
'hey.desktop-webmail',
'mail-ru.desktop-webmail',
'fastmail.desktop-webmail',
'laposte.desktop-webmail'
];
Example: ["gmail.*", "*.desktop-webmail"]
cssType: string
Required: false
CSS string to analyze for email client compatibility.
htmlType: string
Required: false
HTML string to analyze for email client compatibility.
[!NOTE]
At least one ofcssorhtmlmust be provided.
formatIssue(options)Returns:
{
message: string;
notes: string[];
}
optionsType:
interface FormatIssueOptions {
client: EmailClient;
issue: FeatureIssue;
issueType: 'error' | 'warning';
}
clientType: EmailClient
Required: true
The email client to format the issue for.
issueType: FeatureIssue
Required: true
The feature issue to format.
issueTypeType: 'error' | 'warning'
Required: true
The type of issue being formatted. Determines the formatting of the message.
We 💛 contributions! After all, this is a community-driven project. We have no corporate sponsorship or backing. The maintainers and users keep this project going!
Please check out our Contribution Guide.
FAQs
HTML and CSS Feature Support for Email Clients from caniemail.com
The npm package caniemail receives a total of 309 weekly downloads. As such, caniemail popularity was classified as not popular.
We found that caniemail demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 2 open source maintainers 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.