Skip to main content

Autonomous testing tool - scans your project, understands architecture, plans and runs tests

Project description

Nazar

Test PyPI version License: MIT Python 3.9+

Otonom guvenlik & kalite tarayicisi - Projeyi tarar, mimariyi anlar, 158+ test olusturur ve calistirir.

Ozellikler

  • 158+ otomatik test, 22 kategori
  • 63 guvenlik testi (OWASP Top 10, 50+ secret pattern, supply chain)
  • SCA Scanner (npm audit, pip-audit, govulncheck, typosquatting tespiti)
  • Python AST Analyzer (false positive %80 azalma)
  • Taint Tracking (SQL injection, XSS, command injection veri akisi)
  • YAML Kural Motoru (Semgrep benzeri, kendi kuralinizi yazin)
  • App Store & Play Store uyumluluk kontrolleri
  • 87 adim adim duzeltme rehberi
  • 15+ teknoloji destegi (React Native, Flutter, Django, FastAPI, Go, Rust...)
  • Canli TUI + Interaktif shell + HTML rapor
  • GitHub Action + PR Comment + SARIF
  • VS Code Extension
  • Zero-config: nazar yaz, gerisini o halleder

Kurulum

pipx ile (tavsiye edilen)

pipx install nazar

pip ile

pip install nazar

Kaynaktan (gelistirici)

git clone https://github.com/user/nazar.git
cd nazar
pip install -e ".[dev]"

Kurulumdan sonra terminal'de nazar yazmaniz yeterli.

Kullanim

# Interaktif arayuz (en kolay yol)
nazar

# Tek komutla tam tarama
nazar auto /proje/yolu

# Mevcut dizini tara
nazar auto .

# Sadece tara (rapor yok)
nazar scan .

# Belirli kategori calistir
nazar run . --category security
nazar run . --category sca
nazar run . --category taint
nazar run . --category ast_analysis
nazar run . --category appstore
nazar run . --category playstore
nazar run . --category yaml_rules

# JSON cikti (CI/CD icin)
nazar --json auto .

# GitHub PR entegrasyonu
nazar auto . --github-pr --sarif nazar.sarif

# Minimal cikti
nazar --quiet auto .

# Yapilandirma dosyasi olustur
nazar init

Interaktif Arayuz

nazar yazin, proje yolunu girin. Sonuclari inceleyin:

nazar> /Users/kadir/Desktop/MyApp
nazar> /report failed
nazar> /detail 1
nazar> /guide 1
nazar> /export html
nazar> /categories
nazar> /stats
nazar> /clear
nazar> /help

Docker

docker build -t nazar .
docker run -v $(pwd):/project nazar

Test Kategorileri (22)

Kategori Test Aciklama
Security 63 50+ secret pattern, OWASP Top 10, crypto, CORS, CSRF
SCA 7 npm/pip/go audit, typosquatting, lisans uyumluluk
AST Analysis 6 Python AST ile gercek kod analizi
Taint Tracking 5 SQL injection, XSS, command injection veri akisi
App Store 32 Privacy manifest, ATT, IAP, Sign in with Apple
Play Store 10 targetSdk, exported, ProGuard, permissions
Code Quality 16 Complexity, dead code, smells, debug statements
YAML Rules 3 Semgrep benzeri ozel kural motoru
UI Component 10 a11y, touch target, dark mode, loading state
UX Text 8 Yazim, tutarlilik, i18n, alt text
Cross-File 7 Dead export, orphan component, circular import
API 4 Erisilebilirlik, response, performance
Git 4 gitignore, buyuk dosya, hassas dosya
Type Safety 3 any usage, ts-ignore, as any
Error Handling 3 Bos catch, yutulmus hata, async
Performance 3 Kaynak boyutu, buyuk dosya/gorsel
Documentation 3 README, CHANGELOG
Naming 3 Dosya isimleri, tek harfli degisken
Dependencies 3 Vulnerability, deprecated
Accessibility 2 testID, label
Docker 2 Base image, secret

Plugin Gelistirme

from nazar.plugins.base import BaseTestPlugin

class MyPlugin(BaseTestPlugin):
    name = "my-plugin"
    version = "1.0.0"
    description = "Custom test rules"

    def get_tests(self, scan_result):
        return [{"name": "My Test", "type": "custom", "priority": "medium"}]

    def run_test(self, test, project_path):
        return True, "Passed"

Cikti Formatlari

nazar --json              # JSON
nazar auto --report r.html  # HTML (default)

Programmatik kullanim:

from nazar.reporters import JSONReporter, JUnitReporter, SARIFReporter, MarkdownReporter

Katki

Katki saglamak icin CONTRIBUTING.md dosyasini inceleyin.

Lisans

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

nazar-5.0.0.tar.gz (150.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

nazar-5.0.0-py3-none-any.whl (167.6 kB view details)

Uploaded Python 3

File details

Details for the file nazar-5.0.0.tar.gz.

File metadata

  • Download URL: nazar-5.0.0.tar.gz
  • Upload date:
  • Size: 150.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.3

File hashes

Hashes for nazar-5.0.0.tar.gz
Algorithm Hash digest
SHA256 12263367fa74e5744ceaaff40512496637fccb7f6b3a26bdb916212df7b4ba4e
MD5 133d7965393f0e1b53437f394e7c0396
BLAKE2b-256 617440198cd0e8b24428a9016c69f7c3d2be5460a62f31cbb6dc87e03978eaea

See more details on using hashes here.

File details

Details for the file nazar-5.0.0-py3-none-any.whl.

File metadata

  • Download URL: nazar-5.0.0-py3-none-any.whl
  • Upload date:
  • Size: 167.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.3

File hashes

Hashes for nazar-5.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 acb09829c192ccc61e4795265d08db13693c52936352c2d0757ebc7475fbfe25
MD5 b7ef900993cebfb8ded78b0f92d9abd0
BLAKE2b-256 5c6a37b30618194e2cc2249e3613c53b2dda25399a52c4f68ededddbb834db0a

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page