╔═══════════════════════════════════════════════════════════════════════╗
║ ║
║ █████╗ ██████╗ ██████╗ █████╗ ║
║ ██╔══██╗ ██╔══██╗ ██╔══██╗ ██╔══██╗ ║
║ ███████║ ██████╔╝ ██║ ██║ ███████║ ║
║ ██╔══██║ ██╔══██╗ ██║ ██║ ██╔══██║ ║
║ ██║ ██║██╗ ██║ ██║██╗ ██████╔╝██╗ ██║ ██║██╗ ║
║ ╚═╝ ╚═╝╚═╝ ╚═╝ ╚═╝╚═╝ ╚═════╝ ╚═╝ ╚═╝ ╚═╝╚═╝ ║
║ ║
║ ███████╗██╗████████╗███████╗ ███████╗ ██████╗ █████╗ ███╗ ██╗ ║
║ ██╔════╝██║╚══██╔══╝██╔════╝ ██╔════╝██╔════╝██╔══██╗████╗ ██║ ║
║ ███████╗██║ ██║ █████╗ ███████╗██║ ███████║██╔██╗ ██║ ║
║ ╚════██║██║ ██║ ██╔══╝ ╚════██║██║ ██╔══██║██║╚██╗██║ ║
║ ███████║██║ ██║ ███████╗ ███████║╚██████╗██║ ██║██║ ╚████║ ║
║ ╚══════╝╚═╝ ╚═╝ ╚══════╝ ╚══════╝ ╚═════╝╚═╝ ╚═╝╚═╝ ╚═══╝ ║
║ ║
╚═══════════════════════════════════════════════════════════════════════╝
A standalone CLI tool for comprehensive website analysis including screenshots, SEO, and accessibility testing using Playwright. Test any website without requiring project integration.
🌐 Universal Testing - Test any website by URL
🕷️ Site Crawling - Option to crawl and test entire sites
📸 Screenshots - Capture responsive screenshots across viewports
🔍 SEO Analysis - Comprehensive SEO scanning and reporting
♿ Accessibility Testing - WCAG compliance testing with axe-core
📊 Progress Tracking - Real-time progress display and queue management
📁 Organized Results - Timestamped sessions with structured output
NPM: https://www.npmjs.com/package/arda-site-scan Github: https://github.com/areimel/playwright-site-scanner Landing Page: COMING SOON
# Install the package globally
npm install -g arda-site-scan
# Install Playwright browser binaries (required)
npx playwright install
# Clone and setup for development
git clone <repository-url>
cd playwright-site-scanner
npm install
npm run build
Simply run the CLI without arguments to start the interactive walkthrough:
# Global installation
arda-site-scan
# Local development
npm start
# or
node dist/cli.js
The interactive mode will guide you through:
- URL Selection - Enter the website you want to test
- Crawling Option - Choose to test a single page or crawl the entire site
- Test Selection - Pick from available tests (screenshots, SEO, accessibility)
- Confirmation - Review your settings before starting
Start the interactive walkthrough explicitly:
# Global installation
arda-site-scan start
# Local development
npm start
# or
node dist/cli.js start
- Captures screenshots across desktop, tablet, and mobile viewports
- Full-page screenshots with disabled animations for consistency
- Organized by viewport in the results folder
- Title tag analysis (length, presence)
- Meta description evaluation
- Heading structure examination (H1-H6)
- Image alt text validation
- Internal/external link analysis
- Open Graph tag detection
- Canonical URL verification
- Structured data (Schema.org) identification
- WCAG 2.1 compliance testing using axe-core
- Categorized issues by severity (critical, serious, moderate, minor)
- Detailed reports with fix recommendations
- Element-specific violation details
Results are organized in timestamped session folders:
arda-site-scan-sessions/
├── 07-24-2025_14-30/
│ ├── session-summary.md
│ ├── index/
│ │ ├── index-summary.md
│ │ ├── screenshots/
│ │ │ ├── index-desktop.png
│ │ │ ├── index-tablet.png
│ │ │ └── index-mobile.png
│ │ └── scans/
│ │ ├── index-seo-scan.md
│ │ └── index-accessibility-scan.md
│ └── about/
│ ├── about-summary.md
│ ├── screenshots/
│ └── scans/
- Node.js 18.0.0 or higher
- Playwright browser binaries (install with
npx playwright install
) - Internet connection for axe-core CDN access during accessibility testing
# Install dependencies
npm install
# Build TypeScript
npm run build
# Run in development mode
npm run dev
# Clean build directory
npm run clean
The tool uses an orchestrator pattern with modular test implementations:
- Test Orchestrator - Central control and coordination
- Site Crawler - Discovers pages to test
- Screenshot Tester - Captures responsive screenshots
- SEO Tester - Analyzes SEO elements
- Accessibility Tester - Runs axe-core accessibility audits
- Session Manager - Handles file organization and reporting
- Progress Tracker - Real-time status and queue management
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature
) - Commit your changes (
git commit -m 'Add amazing feature'
) - Push to the branch (
git push origin feature/amazing-feature
) - Open a Pull Request
ISC License - see package.json for details
Browser Download Fails
If you're having issues with browser binaries, ensure they're installed:
npx playwright install
Command Not Found (arda-site-scan)
If the global command isn't working after installation:
# Reinstall globally
npm install -g arda-site-scan
# Or use npx to run without global install
npx arda-site-scan
Permission Errors on Windows
# Run PowerShell as Administrator
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser
TypeScript Build Errors
npm run clean
npm run build
- Check the
session-summary.md
file for detailed error information - Ensure the target website is accessible and not blocking automated tools
- Verify your internet connection for axe-core CDN access
- Custom viewport configurations
- Performance testing integration
- Form testing capabilities
- CI/CD integration helpers
- Custom test rule configurations
- Export to multiple formats (PDF, HTML)