Effortless Data Accuracy with RuleGenius.

Leverage the power of RuleScript to clean, validate, and transform your data faster and more efficiently.

Features

Why Choose RuleGenius?

RuleGenius empowers you to take control of your data with features designed for speed, accuracy, and flexibility. Leverage the power of RuleScript, our intuitive Domain-Specific Language (DSL), to define human-readable rules for seamless data transformation and validation.

Integrate effortlessly into your workflows using our CLI tools or API, or scale securely with on-premises deployment. From real-time processing to managing enterprise-scale datasets, RuleGenius ensures clean, consistent, and reliable data every time.

Built for speed, scalability, and reliability, RuleGenius is powered by Google Cloud Platform (GCP) for top-tier performance, security, and uptime. Developed in C++ for blazing-fast execution, RuleGenius handles the most demanding data transformation and validation tasks with ease, delivering unmatched efficiency for any workload.

Powerful RuleScript DSL

Write human-readable rules for data transformation and validation.

Real-Time Processing

Validate data as it flows into your systems.

Seamless Integration

Use RuleGenius with CLI tools, APIs, or deploy it on-premises.

Scalable and Secure

Handle small datasets or enterprise-scale data with confidence.

How It Works?


Step 1: Write Your Rules

Define your rules using RuleScript, our intuitive DSL. Here’s an example of a ruleset:

rename "price_usd" to "price";
split "full_name" into "first_name", "last_name" by " ";
validate "price": number, min 0, max 10000, on error "Price must be between 0 and 10,000";
validate "country": required, in ["US", "CA", "MX"], on error "Invalid country code";
  • The rename command renames the price_usd field to price.
  • The split command splits full_name into first_name and last_name.
  • The first validate rule ensures price is a number within the specified range.
  • The second validate rule checks that country is required and must be one of the listed values.

Step 2: Submit Your Ruleset

Once you’ve written your ruleset, submit it to RuleGenius using the CLI or API.

CLI Command:
rg-submit my_rules.rs --name "sales_validation"
API Example:
POST /api/v1/submit
Content-Type: multipart/form-data

{
  "name": "sales_validation",
  "file": "my_rules.rs"
}

Step 3: Submit Your Data for Processing

Once your ruleset is submitted, you can validate and transform your data using either the CLI or API, depending on your workflow. RuleGenius supports both batch processing for entire datasets and real-time validation for individual records.

Option 1: Validating a CSV File (Batch Processing)

Batch processing is ideal for validating and transforming large datasets in one operation. Submit a dataset as a file to process all rows based on your ruleset.

CLI Command:
rg-process sales_validation input.csv output.csv

This command processes the input.csv dataset using the sales_validation ruleset and saves the output to output.csv. Once processing is complete, RuleGenius generates detailed feedback, including error summaries and validation results.

Example Output:

Processing complete:
- Rows processed: 1,000
- Rows with errors: 25
- Errors:
  - Row 23: "Price must be between 0 and 10,000" (field: price)
  - Row 45: "Invalid country code" (field: country)
API Example:
POST /api/v1/process/sales_validation
Content-Type: multipart/form-data
{
  "file": "input.csv"
}

Expected Response:

{
  "status": "success",
  "rows_processed": 100,
  "rows_with_errors": 2,
  "errors": [
    {
      "row": 23,
      "field": "price",
      "error": "Price must be between 0 and 10,000"
    },
    {
      "row": 45,
      "field": "country",
      "error": "Invalid country code"
    }
  ]
}

Option 2: Validating a Single Record (Real-Time Validation)

Real-time validation is perfect for validating individual records on-the-fly, such as when processing form submissions or automated pipelines.

CLI Command:
echo '{"full_name": "John Doe", "price": -50, "country": "UK"}' | rg-validate sales_validation
  • Description: This command sends a single JSON record to be validated against the sales_validation ruleset. The output is displayed directly in the terminal.
API Example:
POST /api/v1/process/sales_validation
Content-Type: application/json
{
  "record": {
    "full_name": "John Doe",
    "price": -50,
    "country": "UK"
  }
}

Expected Response:

{
  "status": "error",
  "errors": [
    {
      "field": "price",
      "error": "Price must be between 0 and 10,000"
    },
    {
      "field": "country",
      "error": "Invalid country code"
    }
  ]
}

Why Two Interfaces (CLI vs. API)?
  • CLI: Ideal for users who prefer local or terminal-based workflows. It’s lightweight, quick to use, and perfect for batch jobs or single-record testing.
  • API: Best for developers integrating RuleGenius into web or backend systems. It supports automation and scaling for dynamic use cases.
Why Two Processing Options (Batch vs. Real-Time)?
  • Batch Processing: Perfect for handling large datasets (e.g., CSV files) in a single operation. Useful for cleaning up historical data or preparing files for analysis.
  • Real-Time Validation: Enables on-the-fly validation of individual records, ensuring clean data at the point of entry, such as during form submissions or automated workflows.

PRICING PLANS

Flexible Plans Coming Soon


What You Can Expect:

  • Free Tier: Perfect for testing and small-scale projects.
  • Scalable Solutions: Designed to grow with your business.
  • Enterprise Features: Customizable options for large-scale and on-premises needs.

Be the First to Know

Sign up to stay updated about our pricing plans and get exclusive early access to RuleGenius!


Latest from Blog

Stay informed with the latest updates, insights, and tips from the RuleGenius team. Explore how-tos, industry trends, and expert advice to make the most of your data transformation and validation workflows.