nazim-migrations

Enforce Nazim database migration patterns for multi-tenancy and secure SQL.

Updated Nov 15, 2025
One-click install
npx skills add https://github.com/AHMADJAN-New/nazim-web --skill nazim-migrations
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: nazim-migrations
Source: https://github.com/AHMADJAN-New/nazim-web/tree/main/.cursor/skills/nazim-migrations
Command: npx skills add https://github.com/AHMADJAN-New/nazim-web --skill nazim-migrations

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve?

This Skill ensures all database migrations in the Nazim system adhere to strict security, consistency, and multi-tenancy patterns, preventing common pitfalls.

Core Features & Use Cases

  • Standardized Schema: Enforces UUID primary keys, tenant scoping (organization_id, school_id), and proper indexing.
  • Secure SQL: Guides the creation of SQL functions with search_path to prevent injection.
  • RLS Policy Naming: Ensures Row Level Security policies are consistently named and structured.
  • Use Case: When creating a new table for student records, use this Skill to ensure it includes organization_id and school_id columns with appropriate foreign key constraints and RLS policies.

Quick Start

Apply the nazim-migrations skill to ensure the new 'grades' table uses UUID primary keys and organization_id.

Frequently Asked Questions about nazim-migrations

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I enforce multi-tenancy in Laravel database migrations?

To enforce multi-tenancy in Laravel database migrations, apply standardized patterns including UUID primary keys, tenant scoping with organization_id and school_id columns, and proper foreign key constraints to ensure strict tenant isolation.

How should RLS policies be named in SQL database migrations?

Row Level Security policies should be consistently named and structured in SQL migrations to ensure proper tenant isolation. Consistent RLS policy naming helps maintain database security standards and prevents unauthorized data access across different organizations and schools.

Why do SQL migration functions need a search_path parameter?

SQL migration functions need a search_path parameter to prevent SQL injection attacks. Setting a secure search_path ensures functions execute in a controlled schema environment, protecting multi-tenant database operations from malicious schema manipulation.

What columns are required for a new student records table in a multi-tenant database?

When creating a new table for student records, you need UUID primary keys, organization_id and school_id columns for tenant scoping, appropriate foreign key constraints, and properly configured RLS policies to ensure secure multi-tenant data isolation.

Can I use this migration approach for single-tenant applications?

This migration approach is designed specifically for multi-tenant architectures requiring organization_id and school_id scoping. While the UUID primary key and search_path security patterns are broadly applicable, the RLS policies and tenant columns target multi-tenant systems specifically.

What are the limitations of enforcing strict database migration standards?

Strict database migration standards may limit flexibility in schema design and require additional overhead for every new table creation. The mandatory inclusion of tenant identifiers and RLS policies means all tables must conform to the multi-tenant structure, which may not suit simpler database designs.