Docs/Presets/Django

Django

Security and convention rules for Django projects.

Enabled Rules

RuleSeverityDescription
security/secret-detectionblockDetects Django SECRET_KEY and database credentials in code
security/env-exposureblockPrevents hardcoded secrets in settings files
workflow/migration-safetywarnFlags dangerous SQL in Django migrations
quality/naming-conventionsblockDjango naming conventions (snake_case views, PascalCase models)
quality/file-structurewarnModels, views, and serializers in correct locations

Usage

import { defineConfig } from '@solanticai/vguard';

export default defineConfig({
  presets: ['django'],
});

What it enforces

  • No hardcoded secrets — Blocks SECRET_KEY = '...' patterns in settings.py. Use environment variables via os.environ or django-environ.
  • Migration safety — Warns on RunSQL operations with destructive commands. Flags DROP TABLE, raw DELETE, and schema changes that may cause data loss.
  • Naming conventions — Views must be snake_case (user_detail, not UserDetail). Models must be PascalCase singular (UserProfile, not user_profiles).
  • File structure — Models in models.py or models/, views in views.py or views/, serializers in serializers.py.