Skip to content

Commit

Permalink
chore: 🏡 新增贡献指南和行为守则,并更新 READEME
Browse files Browse the repository at this point in the history
  • Loading branch information
skiyee committed Apr 11, 2024
1 parent bb8fe97 commit 9026fd5
Show file tree
Hide file tree
Showing 3 changed files with 109 additions and 181 deletions.
45 changes: 45 additions & 0 deletions .github/CODE_OF_CONDUCT.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
# 贡献者公约行为准则

## 承诺

为了促进一个开放和包容的环境,作为贡献者和维护者,我们承诺为每个人提供无骚扰的参与项目和社区的体验,无论年龄、身体大小、残疾、种族、性别特征、性别认同和表达、经验水平、教育、社会经济地位、国籍、个人外貌、种族、宗教或性别认同和取向等。

## 行为标准

促进积极环境的行为准则:

- 使用欢迎和包容性的语言
- 尊重不同的观点和经验
- 欢迎建设性批评
- 关注社区最新最好的技术,行为准则等
- 对其他社区成员展示友好

不可接受行为示例:

- 性化语言或图像等
- 挑衅、侮辱、贬低的评论和个人或政治攻击
- 骚扰
- 未经明确允许,发布他人的私人信息
- 其他在职业环境中可以被视为不合适的行为

## 责任感

项目维护者负责明确可接受行为的标准,并应对任何不可接受行为采取适当和公正的纠正措施。

项目维护者有权和责任删除、编辑或拒绝评论、提交、代码、wiki、issue 和其他不符合本行为准则的贡献,暂时或永久禁止任何贡献者参与其他不适当、具有威胁性、冒犯性或有害的行为。

## 范围

本行为准则适用于所有项目,并且当个人在公共空间代表项目或其社区时也适用。代表项目或社区的示例包括使用官方项目电子邮件地址,通过官方社交媒体账户发布内容,或在在线或离线活动中担任指定代表。项目的代表可以由项目维护者进一步定义和澄清。

## 执行

如有骚扰或其他不可接受的行为,可以通过联系项目团队 [📪](mailto:[email protected]) 来报告。所有投诉将被审理和调查,在必要和适当的情况下会给予答复。项目团队将会对事件的报告者保密。特定的进一步详细信息可能会单独发布。

不遵守或不诚信执行行为准则的项目维护人员可能会面临由项目管理者或其他成员决定的暂时或永久的封禁。

## 版权声明

本行为准则改编自贡献者公约,版本1.4,可在 [code-of-conduct](https://www.contributor-covenant.org/version/1/4/code-of-conduct.html) 获得。

有关此行为准则的常见问题的答案,请参见 [Q&A](https://www.contributor-covenant.org/faq)
47 changes: 47 additions & 0 deletions .github/CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
# 贡献指南

Hey There 💜, 感谢参与贡献!在提交您的贡献之前,请务必花点时间阅读以下指南:

- [行为准则](https://github.com/claxjs/ucv/blob/main/.github/CODE_OF_CONDUCT.md)

## 参与开发

### 克隆

```
git clone https://github.com/claxjs/ucv.git
```

### 起手

- 我们需要使用 `pnpm` 作为包管理器
- 安装依赖 `pnpm install`
- 打包项目 `pnpm build`

### 代码

- 我们使用 `ESLint` 来检查和格式化代码
- 请确保代码可以通过仓库 `ESLINT` 验证

### 测试

- 如果是新增新功能,我们希望有测试代码
- 运行测试 `pnpm test`

### Commit

我们使用 [Conventional Commits](https://www.conventionalcommits.org/en/v1.0.0/) 规范,若不满足将会被拦截

> `git add` 后可通过 `git cz` 提交Commit,对不熟悉的朋友会更加便利且友好
### Pull Request

#### 参考

如果你的第一次参与贡献,可以先通过以下文章快速入门:

- [第一次参与开源](https://github.com/firstcontributions/first-contributions/blob/main/translations/README.zh-cn.md)

#### 规范

尽量避免多个不同功能的 `Commit` 放置在一个 `PR` 中,若出现这种情况,那么我们将会让其压缩成一个 `Commit` 合并
198 changes: 17 additions & 181 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,201 +3,37 @@
[![NPM version](https://img.shields.io/npm/v/@claxjs/ucv?color=90D26D&labelColor=18181B&label=npm)](https://www.npmjs.com/package/@claxjs/ucv)
[![NPM downloads](https://img.shields.io/npm/dw/@claxjs/ucv?color=90D26D&labelColor=18181B&label=downloads)](https://www.npmjs.com/package/@claxjs/ucv)
[![LICENSE](https://img.shields.io/github/license/claxjs/ucv?style=flat&labelColor=18181B&color=90D26D&label=license)](https://www.npmjs.com/package/@claxjs/ucv)
[![Netlify Status](https://api.netlify.com/api/v1/badges/02988e7f-a5b9-4b1e-9878-31cf1d16533b/deploy-status)](https://clax.netlify.app/)

> 工具类(utility classes) 和 属性(props) 的最佳拍档
## 🚀 功能

- 插槽分片
- 定制变量
- 组合变量
- 类型提示
- 不限框架
- 基础单元 ([Base](https://clax.netlify.app/feature/base))
- 属性变量 ([Vars](https://clax.netlify.app/feature/vars))
- 组合变量 ([CombosVars](https://clax.netlify.app/feature/combosVars))
- 不限框架 ([Integrations](https://clax.netlify.app/integration/uno))
- 智能提示 ([AutoComplete](https://clax.netlify.app/feature/api))

## 📂 目录
## 📚 文档

- 💬 [社区](#discussions)
- 📦 [安装](#installation)
- 🎯 [使用](#usage)
- 👀 [待办](#todo)
-[WHY](#why)
- 💜 [致谢](#acknowledgements)
- 😁 [作者](#author)
- ⚖️ [声明](#license)
详细使用文档,👉 [请点击这里](https://clax.netlify.app/)

## <a name="discussions">💬 社区</a>
## 🎯 使用

- QQ 交流群 ([897784703](https://qm.qq.com/q/4c3Sn0R98Y)]

## <a name="installation">📦 开始</a>

```
pnpm install @claxjs/ucv
```

## <a name="usage">🎯 使用</a>

文档已经完成了90%的内容,就等待网站上线了 💜

### Slices(分片)

``` javascript
const clax = ucv({
base: {
root: 'base-root-style-1',
title: 'base-title-style-1'
}
})

const { root, title } = clax()

/**
* root() => 'base-root-style-1'
* title() => 'base-title-style-1'
*/
```

### Vars(变量)

``` javascript
const clax = ucv({
base: {
root: 'base-root-style-1',
},
vars: {
color: {
primary: {
root: 'vars-color-primary-root-style-1'
},
},
disabled: {
true: {
root: 'vars-disabled-true-root-style-1'
}
}
}
})

const { root } = clax({ color: 'primary', disabled: true })
/**
* root() => 'base-root-style-1 vars-color-primary-root-style-1 vars-disabled-true-root-style-1'
*/
```

### DefaultProps(默认属性)
- [Uno](https://clax.netlify.app/integration/uno)
- [Tailwind](https://clax.netlify.app/integration/tailwind)

``` javascript
const clax = ucv({
base: {
root: 'base-root-style-1',
},
vars: {
color: {
primary: {
root: 'vars-color-primary-root-style-1',
},
},
disabled: {
true: {
root: 'vars-disabled-true-root-style-1',
},
},
},
defaultProps: {
color: 'primary',
disabled: true,
},
})
## 💬 社区

const { root } = clax()
/**
* root() => 'base-root-style-1 vars-color-primary-root-style-1 vars-disabled-true-root-style-1'
*/
```

### CombosVars(组合变量)

``` javascript
const clax = ucv({
base: {
root: 'base-root-style-1',
title: 'base-title-style-1',
},
vars: {
color: {
primary: {
root: 'vars-color-primary-root-style-1',
},
secondary: {
root: 'vars-color-secondary-root-style-1',
title: 'vars-color-secondary-title-style-1',
},
},
disabled: {
true: {
root: 'vars-disabled-true-root-style-1',
},
false: {
root: 'vars-disabled-false-root-style-1',
title: 'vars-disabled-false-title-style-1',
},
},
},
combosVars: [
{
color: 'primary',
disabled: true,
class: {
root: 'combos-vars-color-primary-disabled-true-root-style-1',
},
},
{
color: ['primary', 'secondary'],
disabled: false,
class: {
root: 'combos-vars-color-primary-disabled-false-root-style-1',
},
},
],
defaultProps: {
color: 'primary',
disabled: true,
},
})

const { root } = clax()
const { title } = clax({ color: 'secondary', disabled: false })

/**
* root() => 'base-root-style-1 vars-color-primary-root-style-1 vars-disabled-true-root-style-1 combos-vars-color-primary-disabled-true-root-style-1'
*
* root({ color: 'primary', disabled: false }) => 'base-root-style-1 vars-color-primary-root-style-1 vars-disabled-false-root-style-1 combos-vars-color-primary-disabled-false-root-style-1'
*
* title() => 'base-title-style-1 vars-color-secondary-title-style-1 vars-disabled-false-title-style-1'
*/
```

## <a name="todo">👀 待办</a>

- [ ] 添加插槽语法糖
- [ ] 解决工具类冲突

## <a name="why">❓ WHY</a>

`ucv` 主要提供一个 插槽分片 和 组合变量 功能,解决封装组件上难以控制的一些痛点

若用不到以上功能,那么我们建议直接使用 `cva` 即可

## <a name="acknowledgements">💜 致谢</a>

`ucv` 站在巨人肩膀上,由以下项目获取灵感
- QQ 交流群 ([897784703](https://qm.qq.com/q/4c3Sn0R98Y)]

- [cva](https://github.com/joe-bell/cva)
## 💜 致谢

## <a name="author">😁 作者</a>
感谢以下项目,让 `ucv` 得以站在巨人肩膀人上获取的灵感

- sKy ([@Skiyee](https://github.com/skiyee))
- [cva](https://github.com/joe-bell/cva)<br>

## <a name="license">⚖️ 声明</a>
## ⚖️ 声明

采用 [GPL-3.0](./LICENSE) 许可协议

0 comments on commit 9026fd5

Please sign in to comment.