#name #validation #user-name #character #namespaces #alphanumeric #rules

polyvalid

Ayush Jha 所拥有的用于在 wasmer 上验证包名、命名空间、用户名和应用程序名称的验证器

4 个版本

0.1.7 2023年4月4日
0.1.6 2023年4月4日
0.1.5 2023年4月4日
0.1.1 2023年3月25日
0.1.0 2023年3月25日

#1594 in 文本处理

Download history 5/week @ 2024-03-28 1/week @ 2024-04-04

每月下载量 54

MIT 许可证

54KB
120

polyvalid

polyvalid 是一个用于验证包名、用户名、命名空间名称和应用程序名称的 Rust 库。该库提供了一套规则,以验证名称的单一来源

  1. 以字母字符开头
  2. 包含一个或多个字母数字字符、_-
  3. 以字母数字字符结尾

此外,该库还会检查名称是否包含 --,因为它可能会破坏 URL 规则。

该库可以通过提供的绑定从 Python 和 JS 使用。

使用库

该库可以从 rust、python 或 javascript 使用。以下描述了如何从所有三种语言使用它。

Rust

cargo add polyvalid
use polyvalid;

let name: String = "polyvalid";

assert!(polyvalid::is_app_name_valid(name));

Python

pip add polyvalid
import polyvalid

name = "polyvalid"
polyvalid.is_app_name_valid(name) # returns True

JavaScript

npm i polyvalid
import "polyvalid";
name = "polyvalid";
polyvalid.is_valid_name(name); // returns true

下一步

  • 添加 CI 以自动发布到 wapm、pypi、npm
  • 为库的 python 和 JS 版本添加测试
  • 添加 Python 库的包装器(以改进可用性)

贡献

欢迎贡献!如果您想为 polyvalid 贡献,请按照以下步骤操作

  1. 从仓库分叉并创建一个新分支用于您的更改。
  2. 进行更改,编写测试,并确保测试通过。
  3. polyvalid 仓库提交拉取请求。
  4. 等待维护者的反馈或批准。

依赖项

~3.5–5MB
~94K SLoC