
Security News
crates.io Ships Security Tab and Tightens Publishing Controls
crates.io adds a Security tab backed by RustSec advisories and narrows trusted publishing paths to reduce common CI publishing risks.
@codady/icax
Advanced tools
Icax is a lightweight, high-performance SVG icon component system designed for modern web applications.
Icax is a lightweight, high-performance SVG icon component system designed for modern web applications. It offers over 100 carefully crafted icons, supports complete style customization, and is specially optimized for RTL (right-to-left) layout support.
npm install @codady/icax
# or
yarn add @codady/icax
# or
pnpm add @codady/icax
<script src="https://unpkg.com/@codady/icax"></script>
// ES6 Module
import { icax } from '@codady/icax';
// Get SVG string
const checkIcon = icax.check();
const arrowIcon = icax.arrowStart({ size: '24px', color: '#007bff' });
// Insert into HTML
document.getElementById('icon-container').innerHTML = checkIcon;
const customIcon = icax.checkCircle({
size: '2em',
color: 'green',
thickness: 3,
linecap: 'square',
linejoin: 'miter',
classes: 'my-icon custom-class'
});
All icons follow the same pattern:
icax.iconName(options)
| Parameter | Type | Default | Description |
|---|---|---|---|
size | string | '1em' | Icon dimensions (width and height) |
color | string | 'currentColor' | Stroke color |
thickness | number | 2 | Stroke width in pixels |
linecap | string | 'round' | Stroke line cap (butt, round, square) |
linejoin | string | 'round' | Stroke line join (miter, round, bevel) |
classes | string/array | '' | Additional CSS classes |
icax.square() // Square icon
icax.circle() // Circle icon
icax.squircle() // Rounded square
icax.flower() // Flower shape
icax.bubble() // Speech bubble
// Simple arrows
icax.start() // Left arrow
icax.end() // Right arrow
icax.up() // Up arrow
icax.down() // Down arrow
// With shapes
icax.startCircle() // Left arrow in circle
icax.endSquare() // Right arrow in square
icax.upSquircle() // Up arrow in squircle
icax.check() // Check mark
icax.close() // Close/X icon
icax.plus() // Plus sign
icax.minus() // Minus sign
icax.copy() // Copy icon
icax.clipboard() // Clipboard
icax.play() // Play button
icax.pause() // Pause button
icax.volume() // Volume icon
icax.volume1() // Volume 1 bar
icax.volume2() // Volume 2 bars
icax.mute() // Mute icon
icax.prev() // Previous track
icax.next() // Next track
icax.info() // Info icon
icax.warn() // Warning icon
icax.issue() // Issue/help icon
icax.search() // Search icon
icax.zoomIn() // Zoom in
icax.zoomOut() // Zoom out
icax.upload() // Upload icon
icax.download() // Download icon
:root {
--icon-color: #333;
--icon-size: 24px;
--icon-thickness: 2;
}
.icon {
color: var(--icon-color);
font-size: var(--icon-size);
}
const icon = icax.check({
color: 'var(--icon-color)',
size: 'var(--icon-size)',
thickness: 'var(--icon-thickness)'
});
function getIcon(theme) {
return icax.checkCircle({
color: theme === 'dark' ? '#ffffff' : '#000000',
size: theme === 'compact' ? '16px' : '24px'
});
}
Icax automatically handles RTL layouts:
<html dir="rtl">
<!-- Icons will automatically mirror when needed -->
</html>
Manual RTL control:
// Some icons have built-in RTL awareness
icax.start() // Will mirror in RTL mode
icax.end() // Will mirror in RTL mode
import React from 'react';
import { icax } from '@codady/icax';
const Icon = ({ name, ...props }) => {
const iconHtml = icax[name](props);
return <div dangerouslySetInnerHTML={{ __html: iconHtml }} />;
};
// Usage
<Icon name="check" size="32px" color="green" />
<template>
<div v-html="iconSvg"></div>
</template>
<script>
import { icax } from '@codady/icax';
export default {
props: {
name: String,
size: { type: String, default: '1em' },
color: { type: String, default: 'currentColor' }
},
computed: {
iconSvg() {
return icax[this.name]({
size: this.size,
color: this.color
});
}
}
};
</script>
// Generate multiple icons with same style
const iconConfig = {
size: '20px',
color: '#666',
thickness: 1.5
};
const icons = {
check: icax.check(iconConfig),
close: icax.close(iconConfig),
plus: icax.plus(iconConfig)
};
MIT License - see LICENSE for details.
This software supports the MIT License, allowing free learning and commercial use, but please retain the terms 'Icax' and 'ICAX' within the software.
Thanks to all contributors and the open-source community for making this project possible.
Icax - Making beautiful, customizable SVG icons simple and accessible for everyone.
Icax 是一个轻量级、高性能的SVG图标组件系统,专为现代Web应用设计。它提供了100多个精心设计的图标,支持完全自定义样式,并特别优化了RTL(从右到左)布局支持。
npm install @codady/icax
# 或
yarn add @codady/icax
# 或
pnpm add @codady/icax
<script src="https://unpkg.com/@codady/icax"></script>
// ES6模块
import { icax } from '@codady/icax';
// 获取SVG字符串
const checkIcon = icax.check();
const arrowIcon = icax.arrowStart({ size: '24px', color: '#007bff' });
// 插入到HTML
document.getElementById('icon-container').innerHTML = checkIcon;
const customIcon = icax.checkCircle({
size: '2em',
color: 'green',
thickness: 3,
linecap: 'square',
linejoin: 'miter',
classes: 'my-icon custom-class'
});
所有图标都遵循相同的模式:
icax.iconName(options)
| 参数 | 类型 | 默认值 | 描述 |
|---|---|---|---|
size | string | '1em' | 图标尺寸(宽高相同) |
color | string | 'currentColor' | 描边颜色 |
thickness | number | 2 | 描边宽度(像素) |
linecap | string | 'round' | 描边端点样式 |
linejoin | string | 'round' | 描边连接样式 |
classes | string/array | '' | 额外的CSS类 |
icax.square() // 正方形图标
icax.circle() // 圆形图标
icax.squircle() // 圆角方形
icax.flower() // 花朵形状
icax.bubble() // 对话气泡
// 简单箭头
icax.start() // 左箭头
icax.end() // 右箭头
icax.up() // 上箭头
icax.down() // 下箭头
// 带形状的箭头
icax.startCircle() // 圆形中的左箭头
icax.endSquare() // 方形中的右箭头
icax.upSquircle() // 圆角方形中的上箭头
icax.check() // 勾选标记
icax.close() // 关闭/X图标
icax.plus() // 加号
icax.minus() // 减号
icax.copy() // 复制图标
icax.clipboard() // 剪贴板
icax.play() // 播放按钮
icax.pause() // 暂停按钮
icax.volume() // 音量图标
icax.volume1() // 音量1格
icax.volume2() // 音量2格
icax.mute() // 静音图标
icax.prev() // 上一曲
icax.next() // 下一曲
icax.info() // 信息图标
icax.warn() // 警告图标
icax.issue() // 问题/帮助图标
icax.search() // 搜索图标
icax.zoomIn() // 放大
icax.zoomOut() // 缩小
icax.upload() // 上传图标
icax.download() // 下载图标
:root {
--icon-color: #333;
--icon-size: 24px;
--icon-thickness: 2;
}
.icon {
color: var(--icon-color);
font-size: var(--icon-size);
}
const icon = icax.check({
color: 'var(--icon-color)',
size: 'var(--icon-size)',
thickness: 'var(--icon-thickness)'
});
function getIcon(theme) {
return icax.checkCircle({
color: theme === 'dark' ? '#ffffff' : '#000000',
size: theme === 'compact' ? '16px' : '24px'
});
}
Icax自动处理RTL布局:
<html dir="rtl">
<!-- 图标会在需要时自动镜像 -->
</html>
手动RTL控制:
// 一些图标内置了RTL感知
icax.start() // 在RTL模式下会镜像
icax.end() // 在RTL模式下会镜像
import React from 'react';
import { icax } from '@codady/icax';
const Icon = ({ name, ...props }) => {
const iconHtml = icax[name](props);
return <div dangerouslySetInnerHTML={{ __html: iconHtml }} />;
};
// 使用
<Icon name="check" size="32px" color="green" />
<template>
<div v-html="iconSvg"></div>
</template>
<script>
import { icax } from '@codady/icax';
export default {
props: {
name: String,
size: { type: String, default: '1em' },
color: { type: String, default: 'currentColor' }
},
computed: {
iconSvg() {
return icax[this.name]({
size: this.size,
color: this.color
});
}
}
};
</script>
// 用相同样式生成多个图标
const iconConfig = {
size: '20px',
color: '#666',
thickness: 1.5
};
const icons = {
check: icax.check(iconConfig),
close: icax.close(iconConfig),
plus: icax.plus(iconConfig)
};
MIT许可证 - 详见LICENSE。
本软件支持MIT许可证,允许免费学习和商业使用,但请在软件中保留'Icax'和'ICAX'字样。
感谢所有贡献者和开源社区,使这个项目成为可能。
Icax - 让美观、可定制的SVG图标对每个人都变得简单易用。
FAQs
Icax is a lightweight, high-performance SVG icon component system designed for modern web applications.
The npm package @codady/icax receives a total of 6 weekly downloads. As such, @codady/icax popularity was classified as not popular.
We found that @codady/icax 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
crates.io adds a Security tab backed by RustSec advisories and narrows trusted publishing paths to reduce common CI publishing risks.

Research
/Security News
A Chrome extension claiming to hide Amazon ads was found secretly hijacking affiliate links, replacing creators’ tags with its own without user consent.

Security News
A surge of AI-generated vulnerability reports has pushed open source maintainers to rethink bug bounties and tighten security disclosure processes.