The HTML Analyzer is a powerful web application designed to help developers and content creators identify and address issues in HTML documents. With an intuitive interface and comprehensive analysis, this tool provides instant insights into potential barriers.
- File Upload: file selection
- Instant Analysis: Real-time scoring
- Detailed Reporting:
- Identifies missing alt text
- Checks heading hierarchy
- Detects non-semantic HTML structures
- Scoring System: Provides a comprehensive score
- User-Friendly Interface: Clean and intuitive design
- Node.js (v18+)
- npm (v8+)
-
Clone the repository
git clone https://github.com/sambayour/html-analyser.git cd html-analyser
-
Install Backend Dependencies
cd BE npm install
-
Install Frontend Dependencies
cd ../FE npm install
Create a .env
file in the BE
directory:
PORT=3200
Create a .env
file in the frontend
directory:
VITE_API_URL=http://localhost:3200
-
Start Backend Server
cd BE npm run dev
-
Start Frontend Development Server
cd frontend npm run dev
-
Build Backend
cd BE npm run build
-
Build Frontend
cd FE npm run build
- Characteristics:
- Proper semantic structure
- Meaningful alt text
- Correct heading hierarchy
- Accessible navigation
- Characteristics:
- No semantic HTML
- Missing alt text
- Non-descriptive elements
- Improper document structure
- Characteristics:
- Mixed accessibility features
- Skipped heading levels
- Some images with alt, some without
- Combination of semantic and non-semantic elements
- Upload these files to the Accessibility Analyzer
- Compare the generated accessibility scores
- Review detailed issue reports
- Validate different levels of accessibility
- Test score calculation logic
- Check issue detection capabilities
The analyzer uses a comprehensive scoring mechanism:
- 90-100: 🟢 Excellent Accessibility
- 70-89: 🟡 Needs Improvement
- 0-69: 🔴 Significant Accessibility Barriers
-
Missing Alt Text
- Checks for descriptive alternative text on images
- High-impact issue
-
Heading Hierarchy
- Validates proper heading structure
- Ensures logical document outline
-
Semantic HTML
- Identifies non-semantic element usage
- Encourages meaningful HTML structure
Contributions are welcome! Please follow these steps:
- Fork the repository
- Create your feature branch (
git checkout -b feature/AmazingFeature
) - Commit your changes (
git commit -m 'Add some AmazingFeature'
) - Push to the branch (
git push origin feature/AmazingFeature
) - Open a Pull Request
accessibility-analyzer/
│
├── BE/
│ ├── src/
│ │ ├── index.ts
│ ├── package.json
│ └── tsconfig.json
│
├── FE/
│ ├── src/
│ │ ├── App.vue
│ │ └── components/
│ ├── package.json
│ └── vite.config.ts
│
└── README.md
- Backend:
- Node.js
- Express
- TypeScript
- Frontend:
- Vue.js
- Vite
- Tailwind CSS
- Testing:
- Jest
- Vue Test Utils
Distributed under the MIT License. See LICENSE
for more information.
Your Name - [email protected]
Project Link: https://github.com/sambayour/html-analyser
Disclaimer: This tool provides guidance and should not be considered a complete accessibility audit. Always conduct comprehensive accessibility testing.