RapidValidators
High-performance Python validators implemented in Rust. Drop-in replacement for the validators library with 29x average speedup.
✨ Features
- 🚀 29x faster on average than the pure Python
validatorslibrary - 🔄 100% API compatible - just change your import
- 📦 48+ validators covering networks, finance, crypto, and more
- ✅ 370 tests ensuring compatibility with the original library
📊 Performance
| Validator | Speedup | Validator | Speedup |
|---|---|---|---|
| ipv4 | 47.0x | mac_address | 27.0x |
| ipv6 | 39.4x | md5 | 22.7x |
| url | 35.9x | slug | 22.6x |
| 28.5x | uuid | 21.0x | |
| domain | 28.3x | sha256 | 18.6x |
Average: 29.1x faster | Tested with 100,000 iterations per validator
📦 Installation
pip install rapidvalidators
🚀 Usage
# Drop-in replacement - just change the import!
import rapidvalidators as validators
# Validate email
if validators.email("test@example.com"):
print("Valid email!")
# Validate URL
if validators.url("https://example.com"):
print("Valid URL!")
# ValidationError is falsy (just like the original)
result = validators.email("invalid")
if not result:
print(f"Invalid: {result.func}")
📋 Available Validators
| Category | Validators |
|---|---|
| Network | email, url, domain, hostname, ipv4, ipv6, mac_address |
| Data | uuid, slug, length, between |
| Encoding | base16, base32, base58, base64 |
| Hashes | md5, sha1, sha224, sha256, sha384, sha512 |
| Cards | card_number, visa, mastercard, amex, discover, diners, jcb, mir, unionpay |
| Crypto | btc_address, eth_address, bsc_address, trx_address |
| Finance | iban, cusip, isin, sedol |
| Country | country_code, currency, calling_code |
| International | es_cif, es_doi, es_nie, es_nif, fi_business_id, fi_ssn, fr_department, fr_ssn, ind_aadhar, ind_pan, ru_inn |
| Other | cron |
🛠️ Development
# Clone the repository
git clone https://github.com/vivekkalyanarangan30/rapidvalidators.git
cd rapidvalidators
# Install development dependencies
pip install maturin pytest validators
# Build and install locally
maturin develop
# Run tests
cargo test # Rust tests
pytest tests/ -v # Python tests
🤝 Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
📄 License
MIT
Metadata
Release files for rapidvalidators 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| rapidvalidators-0.1.0.tar.gz | 37.0 kB | Details |
Built distributions (wheels)
Total release size: 23.8 MB
Release files / rapidvalidators-0.1.0.tar.gz
| Download URL | rapidvalidators-0.1.0.tar.gz |
|---|---|
| Size | 37.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
8504824f614837201ddf9da1e12f0aee3818e692cc0aef2e6f8e06adc15b1915
|
|
BLAKE2b-256 checksum How to use checksums |
3e73ca532cf6ec79144e1dddd3ca9273efaa7475c1af655bab991f864114dcbb
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
maturin/1.11.5
|
Release files / rapidvalidators-0.1.0-cp314-cp314-win_amd64.whl
| Download URL | rapidvalidators-0.1.0-cp314-cp314-win_amd64.whl |
|---|---|
| Size | 876.5 kB |
| Tags | CPython 3.14 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
1093ecf351c0529a70c050a69c6bf4f8a0edf7fbe575de3f7522181876d45db5
|
|
BLAKE2b-256 checksum How to use checksums |
0c0b4f045e519cd715474c2cc360a98ba2379719d9af60fc150cd73675f7efc7
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
maturin/1.11.5
|
Release files / rapidvalidators-0.1.0-cp314-cp314-macosx_11_0_arm64.whl
| Download URL | rapidvalidators-0.1.0-cp314-cp314-macosx_11_0_arm64.whl |
|---|---|
| Size | 915.1 kB |
| Tags | CPython 3.14 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
54876f62fb79b8bcffb10e127e1b4f50106f18bbdde8f5ac77e2958341ca225a
|
|
BLAKE2b-256 checksum How to use checksums |
961d7d4283083e865b522a1c28159d9dd1973537ed97cea3c457ed0ba58e5180
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
maturin/1.11.5
|
Release files / rapidvalidators-0.1.0-cp314-cp314-macosx_10_12_x86_64.whl
| Download URL | rapidvalidators-0.1.0-cp314-cp314-macosx_10_12_x86_64.whl |
|---|---|
| Size | 961.7 kB |
| Tags | CPython 3.14 macOS 10.12+ x86-64 |
|
SHA-256 checksum How to use checksums |
ab9d2fed891d9bc390042ded2da8ed22d04a6288de646cd1dcf3afad9eb7b6c0
|
|
BLAKE2b-256 checksum How to use checksums |
8af8a3d1cd3c8e01eb6408d6f132ba156cae9b852e7cc2f615bafb9719c2237c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
maturin/1.11.5
|
Release files / rapidvalidators-0.1.0-cp313-cp313-win_amd64.whl
| Download URL | rapidvalidators-0.1.0-cp313-cp313-win_amd64.whl |
|---|---|
| Size | 876.5 kB |
| Tags | CPython 3.13 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
61859d77d73a7c5db92b74281f79fb23c465717f00b448b05f5d4e139013b6b2
|
|
BLAKE2b-256 checksum How to use checksums |
7c2490c4b5d3c04641b6a954f99a6483b3e145088047cf8cd0f51c003a052c28
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
maturin/1.11.5
|
Release files / rapidvalidators-0.1.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
| Download URL | rapidvalidators-0.1.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl |
|---|---|
| Size | 1.0 MB |
| Tags | CPython 3.13 Linux glibc 2.17+ x86-64 |
|
SHA-256 checksum How to use checksums |
9e99e6d67e8d54e57cce2abb12f55953c9a69750aa27ae624399ac5d3a8a6463
|
|
BLAKE2b-256 checksum How to use checksums |
52cbb9acdd2c2267106abb3d900924d1a40ec14ca131ce534ff044c47e90cc9e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
maturin/1.11.5
|
Release files / rapidvalidators-0.1.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
| Download URL | rapidvalidators-0.1.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl |
|---|---|
| Size | 963.4 kB |
| Tags | CPython 3.13 Linux glibc 2.17+ ARM64 |
|
SHA-256 checksum How to use checksums |
811622d81c35f3f07157727887a3d1eb264b592f0035df7b9c326956f8b9d3e0
|
|
BLAKE2b-256 checksum How to use checksums |
dba046b17606206ca288bdf6d748d17e9e516469fb812c41c2817df2b3a6b966
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
maturin/1.11.5
|
Release files / rapidvalidators-0.1.0-cp313-cp313-macosx_11_0_arm64.whl
| Download URL | rapidvalidators-0.1.0-cp313-cp313-macosx_11_0_arm64.whl |
|---|---|
| Size | 915.1 kB |
| Tags | CPython 3.13 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
0ef04b29c0611bf0e49731d6509782968d5e6cb3d6a9409c0e91a3e5d7b9a1a1
|
|
BLAKE2b-256 checksum How to use checksums |
3c1af927d5422f9919eb37b9db10c11d72bcbc1a5db843c849ec3ef58402eae1
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
maturin/1.11.5
|
Release files / rapidvalidators-0.1.0-cp313-cp313-macosx_10_12_x86_64.whl
| Download URL | rapidvalidators-0.1.0-cp313-cp313-macosx_10_12_x86_64.whl |
|---|---|
| Size | 961.7 kB |
| Tags | CPython 3.13 macOS 10.12+ x86-64 |
|
SHA-256 checksum How to use checksums |
ad3f8eb1d2240c34923422da626e6b3cff1c8cbe40174009bd4c407e76a927eb
|
|
BLAKE2b-256 checksum How to use checksums |
75ee7b01bdc1a84c6d8b7c898ef6fb71ad9ba1f3a98e10833cacbf54d61838bf
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
maturin/1.11.5
|
Release files / rapidvalidators-0.1.0-cp312-cp312-win_amd64.whl
| Download URL | rapidvalidators-0.1.0-cp312-cp312-win_amd64.whl |
|---|---|
| Size | 876.9 kB |
| Tags | CPython 3.12 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
86148a446e64152a4a58cd99e2fcb1eaaac57785d2f22d85ab14f46ea4288256
|
|
BLAKE2b-256 checksum How to use checksums |
f0a5f1f091ffc7f9614439f84aa068a91b39581ef9c108700bfdbd2b03d74687
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
maturin/1.11.5
|
Release files / rapidvalidators-0.1.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
| Download URL | rapidvalidators-0.1.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl |
|---|---|
| Size | 1.0 MB |
| Tags | CPython 3.12 Linux glibc 2.17+ x86-64 |
|
SHA-256 checksum How to use checksums |
b5030ff78bf9b12aa9ed2ac925518c34a89d61b21e53487eb3d77c3427678fd0
|
|
BLAKE2b-256 checksum How to use checksums |
72bdc7f5620c6e5c93428fa1b5037cd3ef4a21a7e01c2173c2ab13d5a5d42ed4
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
maturin/1.11.5
|
Release files / rapidvalidators-0.1.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
| Download URL | rapidvalidators-0.1.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl |
|---|---|
| Size | 964.2 kB |
| Tags | CPython 3.12 Linux glibc 2.17+ ARM64 |
|
SHA-256 checksum How to use checksums |
71aaa98aa361c8dd065284153782e2f80977db63066af00ccdec4dfe7d0377e8
|
|
BLAKE2b-256 checksum How to use checksums |
bee29a018886334a179729aeb669108b12f2705701ad056bc7fd97b9400db3de
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
maturin/1.11.5
|
Release files / rapidvalidators-0.1.0-cp312-cp312-macosx_11_0_arm64.whl
| Download URL | rapidvalidators-0.1.0-cp312-cp312-macosx_11_0_arm64.whl |
|---|---|
| Size | 915.4 kB |
| Tags | CPython 3.12 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
fe0c360219cd07f5b2137f0e4c91cab28b91f26c3590d6a906b3cf935f920d24
|
|
BLAKE2b-256 checksum How to use checksums |
dfcc667250f175d95a67ae43c76305138b283d11e4e7ac9b065d06d6c93e4e2e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
maturin/1.11.5
|
Release files / rapidvalidators-0.1.0-cp312-cp312-macosx_10_12_x86_64.whl
| Download URL | rapidvalidators-0.1.0-cp312-cp312-macosx_10_12_x86_64.whl |
|---|---|
| Size | 962.4 kB |
| Tags | CPython 3.12 macOS 10.12+ x86-64 |
|
SHA-256 checksum How to use checksums |
531fdf09808fc65f9105343075e6d75621ccfe77f30c73552e422e891d79d268
|
|
BLAKE2b-256 checksum How to use checksums |
7d29d5e59a534205bdccee280c5bd25e0f8be3e083b60d6400d9fb81592e241f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
maturin/1.11.5
|
Release files / rapidvalidators-0.1.0-cp311-cp311-win_amd64.whl
| Download URL | rapidvalidators-0.1.0-cp311-cp311-win_amd64.whl |
|---|---|
| Size | 876.8 kB |
| Tags | CPython 3.11 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
5af0312cc94a78400a007c88007e27ef51f762b0916ed8035cdfe40d2bcd50d1
|
|
BLAKE2b-256 checksum How to use checksums |
bf3a7e2dcb80822a6f51855eb2287b138afccfb7ea71f98292a04eaeaf9f151d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
maturin/1.11.5
|
Release files / rapidvalidators-0.1.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
| Download URL | rapidvalidators-0.1.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl |
|---|---|
| Size | 1.0 MB |
| Tags | CPython 3.11 Linux glibc 2.17+ x86-64 |
|
SHA-256 checksum How to use checksums |
e6f8f39c31f9446033f0c25d37b13f03f8f27682f93ef795fd9cb880977d1ec1
|
|
BLAKE2b-256 checksum How to use checksums |
62e3fe99e8feb587ae9cc299357d6280e92d0474392a43c7881981f5a44705a9
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
maturin/1.11.5
|
Release files / rapidvalidators-0.1.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
| Download URL | rapidvalidators-0.1.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl |
|---|---|
| Size | 964.8 kB |
| Tags | CPython 3.11 Linux glibc 2.17+ ARM64 |
|
SHA-256 checksum How to use checksums |
b874e9e4542c541ae46d12ca78560dce984df6e2671ddad796aa246986f37ba9
|
|
BLAKE2b-256 checksum How to use checksums |
e76de68284d5d47cb7b32213fba2d9fe6b63a3084b291d3c5c18b5711c98707f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
maturin/1.11.5
|
Release files / rapidvalidators-0.1.0-cp311-cp311-macosx_11_0_arm64.whl
| Download URL | rapidvalidators-0.1.0-cp311-cp311-macosx_11_0_arm64.whl |
|---|---|
| Size | 915.9 kB |
| Tags | CPython 3.11 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
f6fa255b357a5b714b71e2e84e9abc289dbef16cef601ff5c099fd4b106b9043
|
|
BLAKE2b-256 checksum How to use checksums |
8a2dac7745c738c47364ac78fcdf4214334dda73b03b8c2a1599e49dc98709d8
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
maturin/1.11.5
|
Release files / rapidvalidators-0.1.0-cp311-cp311-macosx_10_12_x86_64.whl
| Download URL | rapidvalidators-0.1.0-cp311-cp311-macosx_10_12_x86_64.whl |
|---|---|
| Size | 963.6 kB |
| Tags | CPython 3.11 macOS 10.12+ x86-64 |
|
SHA-256 checksum How to use checksums |
b6b219d053667c8625062b1ba2ce16fdbc9cd49e7edaa9a7588de1e6304d3001
|
|
BLAKE2b-256 checksum How to use checksums |
72ffed80306e0df05b8be860a2e60f1e208b5732c86d6648229f55514b0a0c92
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
maturin/1.11.5
|
Release files / rapidvalidators-0.1.0-cp310-cp310-win_amd64.whl
| Download URL | rapidvalidators-0.1.0-cp310-cp310-win_amd64.whl |
|---|---|
| Size | 878.6 kB |
| Tags | CPython 3.10 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
6be7001e2e377251469f5cf3c1cf8cf6a10c8f530c106d12c29ed27db0e6ae82
|
|
BLAKE2b-256 checksum How to use checksums |
e2ef82d1a0961fab844c974b2be830de50177cfaa38ac2080ac5a603634d7b9d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
maturin/1.11.5
|
Release files / rapidvalidators-0.1.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
| Download URL | rapidvalidators-0.1.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl |
|---|---|
| Size | 1.0 MB |
| Tags | CPython 3.10 Linux glibc 2.17+ x86-64 |
|
SHA-256 checksum How to use checksums |
91c0a4e077dfbfd25737e71c1564e68c68aa7a47fa06bacd38f8a424f4ed3e6f
|
|
BLAKE2b-256 checksum How to use checksums |
c34b5a57533452e1cc880f403edab52679dc82f801d6763bb29dc1717db21a01
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
maturin/1.11.5
|
Release files / rapidvalidators-0.1.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
| Download URL | rapidvalidators-0.1.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl |
|---|---|
| Size | 964.7 kB |
| Tags | CPython 3.10 Linux glibc 2.17+ ARM64 |
|
SHA-256 checksum How to use checksums |
33b800b881d27903080d81539455037639c7f3efccdd7dcf18c42f6291d009f0
|
|
BLAKE2b-256 checksum How to use checksums |
91d2161a3e46513667c8bcc9c2472d28275f4626386b447c5e5c91a98f6c73df
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
maturin/1.11.5
|
Release files / rapidvalidators-0.1.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
| Download URL | rapidvalidators-0.1.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl |
|---|---|
| Size | 1.0 MB |
| Tags | CPython 3.9 Linux glibc 2.17+ x86-64 |
|
SHA-256 checksum How to use checksums |
a265a92bf28c94ee18c49feaecebfa0696beb08203f9a03a534c02a45fd19a0f
|
|
BLAKE2b-256 checksum How to use checksums |
b63fbea075c0cee62ad7ae2a16e0329e5f97c6078396eb6474080e1eed56f348
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
maturin/1.11.5
|
Release files / rapidvalidators-0.1.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
| Download URL | rapidvalidators-0.1.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl |
|---|---|
| Size | 965.6 kB |
| Tags | CPython 3.9 Linux glibc 2.17+ ARM64 |
|
SHA-256 checksum How to use checksums |
ce29cbcf613682c1ef7507d7ca664054f4cfbc078c84b66a81d093009334e75e
|
|
BLAKE2b-256 checksum How to use checksums |
af753e7964601dec9eb58cc859e75b7e56c7435e123fdc12fef950844ef13a85
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
maturin/1.11.5
|
Release files / rapidvalidators-0.1.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
| Download URL | rapidvalidators-0.1.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl |
|---|---|
| Size | 1.0 MB |
| Tags | CPython 3.8 Linux glibc 2.17+ x86-64 |
|
SHA-256 checksum How to use checksums |
8541d8a446155229eb87f821ba6caedefd62147c1f347b512c5fc24f1dda4ab0
|
|
BLAKE2b-256 checksum How to use checksums |
d4e7f349775a1105989f22ee100a36d0eb34611f029d9c08fa693839b6f5744d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
maturin/1.11.5
|
Release files / rapidvalidators-0.1.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
| Download URL | rapidvalidators-0.1.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl |
|---|---|
| Size | 965.8 kB |
| Tags | CPython 3.8 Linux glibc 2.17+ ARM64 |
|
SHA-256 checksum How to use checksums |
cb269526f72176f62170370b52ffbe96e1a1932783d3cbf4931bd69a3a7b0331
|
|
BLAKE2b-256 checksum How to use checksums |
9d5e6a808b5768b268bb9dde709cd8234e2784b3eada3943a659e214ea3b8794
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
maturin/1.11.5
|