Enes Yakıştır c4745d6cb3 fix: resolve all WCAG 2.1 violations in demo/broken.html and bump version to 3.0.2
- Added lang attribute to html element (WCAG 3.1.1)
- Added descriptive page title (WCAG 2.4.2)
- Added alt attributes to all images (WCAG 1.1.1)
- Removed redundant alt text words (WCAG 1.1.1)
- Fixed empty link and button with discernible text (WCAG 2.4.4, 4.1.2)
- Removed positive tabindex value (WCAG 2.4.3)
- Eliminated duplicate id=main-content (WCAG 4.1.1)
- Fixed insufficient color contrast ratio (WCAG 1.4.3)
- Replaced invalid ARIA role cool-widget with region (WCAG 4.1.2)
- Added title attribute to iframe (WCAG 4.1.2)
- Replaced generic link texts with descriptive ones (WCAG 2.4.4)
- Added associated label for placeholder-only input (WCAG 3.3.2)
- Removed aria-hidden from focusable elements (WCAG 4.1.2)
- Added non-empty heading text (WCAG 2.4.6)
- Added video captions track element (WCAG 1.2.2)
- Added non-empty label text (WCAG 1.3.1)
- Added tabindex=0 to role=button div (WCAG 2.1.1)
2026-06-23 01:25:08 +03:00
2026-05-13 09:10:43 +03:00
2026-05-13 09:10:43 +03:00
2026-05-13 09:10:43 +03:00

YakNet Accessibility Console 2.9 (AI-Powered Static Analysis)

PHP Version License AI Powered

YakNet Accessibility Console, web projelerinizdeki erişilebilirlik (WCAG 2.1) hatalarını sadece tespit etmekle kalmayan, aynı zamanda Yapay Zeka (AI) desteğiyle bu hataları otomatik olarak düzeltebilen (Self-Healing) profesyonel bir PHP static analysis kütüphanesidir.

PHPStan ve PHP-CS-Fixer esintili yapısıyla, yerel görünüm şablonlarınızı (.blade.php, .twig, .html, .php) doğrudan tarayabilir, baseline desteğiyle mevcut hataları yok sayabilir ve CI/CD süreçlerinize tam entegre çalışabilir.


🌟 Öne Çıkan Özellikler

  • 🤖 AI Self-Healing: Tespit edilen WCAG hataları için Google Gemini AI üzerinden akıllı çözüm önerileri alır ve kaynak kodunuzu (Blade, Twig, PHP, HTML) otomatik olarak tamir eder.
  • ⚡ PHPStan Tarzı Analiz: Tüm projeyi veya belirli dizinleri komut satırından tarayarak hataları tam dosya yolu ve satır numarası ile listeler.
  • 🛡️ Baseline Desteği: a11y-baseline.json oluşturarak mevcut erişilebilirlik hatalarını yok sayabilir, CI/CD pipeline'ınızın sadece yeni hatalarda kırılmasını sağlayabilirsiniz.
  • ⚙️ YAML Konfigürasyonu: a11y.yaml dosyası üzerinden tarama yollarını, hariç tutulacak klasörleri, kural seviyelerini ve özel kural setlerini yapılandırabilirsiniz.
  • 🔌 Çoklu Çıktı Formatları:
    • console: Renkli ve düzenli terminal tablosu.
    • json: Makine tarafından okunabilir JSON çıktısı.
    • github: GitHub Actions PR süreçlerinde doğrudan inline hata göstermek için workflow formatı.
  • 📊 Görsel Raporlama: Sonuçları modern bir HTML Dashboard raporu olarak dışarı aktarın.

📦 Kurulum

Composer ile projenize dahil edin:

composer require yaknet/accessibility-console

🚀 CLI Kullanımı

1. Yapılandırma Dosyası Oluşturma (init)

Projenizin kök dizininde varsayılan bir a11y.yaml konfigürasyon dosyası oluşturur:

bin/a11y init

2. Projeyi Tarama (scan / analyse)

a11y.yaml dosyasındaki kurallara ve dizinlere göre tüm projeyi tarar:

bin/a11y scan

Belirli bir dizini veya dosyayı hedef göstermek için:

bin/a11y scan resources/views

URL veya tek bir yerel HTML dosyasını taramak için (crawler desteğiyle):

bin/a11y scan https://test-siteniz.com --crawl

3. Baseline Yönetimi

Projeye ait mevcut tüm hataları a11y-baseline.json dosyasına kaydederek sonraki taramalarda yok sayılmasını sağlar:

bin/a11y scan --generate-baseline

4. Format ve Raporlama Seçenekleri

Hataları GitHub Actions formatında yazdırmak için:

bin/a11y scan --format=github

HTML Raporu kaydetmek için:

bin/a11y scan --report=report.html

5. AI Destekli Otomatik Düzeltme (fix)

Tespit edilen tüm hataları yapay zekaya analiz ettirip dosyalarınızı otomatik olarak tamir ettirin:

bin/a11y fix

Sadece neyin değişeceğini görmek için (--dry-run):

bin/a11y fix --dry-run

6. Kuralları Listeleme (rules)

Mevcut tüm WCAG kurallarını seviyeleri ve açıklamalarıyla birlikte listeler:

bin/a11y rules

⚙️ Yapılandırma (a11y.yaml)

Projenizi özelleştirmek için a11y.yaml dosyasını kullanabilirsiniz:

# Tarama yapılacak dizin veya dosyalar
paths:
  - resources/views
  - public/templates

# Hariç tutulacak dizinler
exclude_paths:
  - vendor
  - node_modules
  - storage

# WCAG seviyesi (1-9, varsayılan 4)
level: 4

# Varsayılan çıktı formatı (console, json, github)
format: console

# Baseline dosyası yolu
baseline: a11y-baseline.json

# Kural özelleştirmeleri
rules:
  exclude:
    - WCAG_1_3_1_FIELDSET # Bu kuralı çalıştırma
  include:
    - App\Rules\CustomAccessibilityRule # Özel kural ekle

🔐 Yapay Zeka API Anahtarı

AI düzeltme ve öneri özelliklerini kullanabilmek için projenizin kök dizininde bir .env dosyası oluşturup Google Gemini API anahtarınızı eklemeniz gerekir:

GEMINI_API_KEY=AIzaSyA...your_key_here

🤝 Katkıda Bulunma

Bu proje açık kaynaklıdır ve katkılarınıza açıktır. Lütfen hata bildirimleri için Issue açmaktan veya yeni özellikler için Pull Request göndermekten çekinmeyin.

📜 Lisans

Bu yazılım YakNet Bilişim tarafından geliştirilmiştir ve MIT Lisansı altında lisanslanmıştır. Detaylar için LICENSE dosyasına göz atabilirsiniz.

S
Description
A professional AI-powered WCAG 2.1 accessibility scanner with self-healing capabilities.
https://accessibility-console.yakhub.com.tr
Readme MIT
386 KiB
0 Stars 1 Watchers 0 Forks
Languages
PHP 82.8%
HTML 17.2%