jsonverify
v1.0.3
Published
A lightweight JSON schema and data validator.
Downloads
5
Maintainers
Readme
Jsonverify
Jsonverify is a lightweight library for validating JSON schemas and data, written in TypeScript. It ensures that the provided data complies with defined schemas, making it ideal for JSON-based applications like APIs, configuration systems, or validation layers in modern applications.
✨ Why Use Jsonverify?
- 🚀 Lightweight and Fast: Optimized for performance in real-world applications.
- 🛠️ TypeScript First: Fully typed for better developer experience and type safety.
- 🔍 Flexible: Supports primitive types, nested schemas, arrays, and advanced constraints.
- ✅ Easy to Use: Intuitive API that gets you started quickly.
📦 Installation
You can install jsonverify using npm or yarn:
npm install jsonverifyor
yarn add jsonverify🛠️ Usage
Importing
import { validate } from "jsonverify";Validating Basic Data
const schema = {
name: "string",
age: "number",
};
const data = {
name: "John",
age: 30,
};
console.log(validate(schema, data)); // trueValidating Nested Data
const schema = {
user: {
name: "string",
age: "number",
},
};
const data = {
user: {
name: "Alice",
age: 25,
},
};
console.log(validate(schema, data)); // trueValidating Arrays
const schema = {
users: [
{
name: "string",
age: "number",
},
],
};
const data = {
users: [
{ name: "Alice", age: 25 },
{ name: "Bob", age: 30 },
],
};
console.log(validate(schema, data)); // trueUsing Optional Properties
const schema = {
type: "object",
properties: {
name: { type: "string" },
age: { type: "number" },
address: { type: "string", optional: true },
},
};
const data = {
name: "John",
age: 30,
};
console.log(validate(schema, data)); // trueUsing Constraints (minLength, maxLength, enum)
const schema = {
type: "string",
enum: ["red", "green", "blue"],
minLength: 3,
maxLength: 5,
};
console.log(validate(schema, "red")); // true
console.log(validate(schema, "yellow")); // false📜 API
validate(schema: Schema, data: Data): booleanValidates the provided data against the schema.
schema: The schema defining the expected types and structure of the data.data: The data to be validated.
Returns: true if the data is valid, or false otherwise.
🔒️ Requirements
- Node.js version 14.0.0 or higher.
🛡️ License
This project is licensed under the MIT License. See the LICENSE file for more information.
👨💻 Contribution
Feel free to open issues or submit pull requests to improve jsonweaver. All contributions are welcome! 🌟
- Fork the repository.
- Create a branch for your feature: git checkout -b my-feature.
- Make your changes and commit: git commit -m 'My awesome feature'.
- Push to the repository: git push origin my-feature.
- Open a pull request on GitHub.
💡 Author
Created by Kledenai. Contact me at [email protected].
