I've used a lot of website audit tools.
They all have the same basic workflow:
Scan website → generate 47 problems → hand the problems back to you → good luck.
And honestly, I got tired of it.
So I built something different.
Meet OptiQra.
The problem
A typical website audit might tell you:
- Your title is too long
- 17 images are missing alt text
- You have broken links
- Your page isn't accessible enough
- Your Core Web Vitals aren't great
- Your content isn't optimized for search
Cool.
Now what?
I'm a developer, so I can go into the code and fix these things.
But even then, there's a lot of annoying manual work involved.
And for someone who isn't a developer, the report basically becomes a giant TODO list.
I wanted the audit tool to actually do something about the problems it found.
So I built one
OptiQra is an open-source website optimization tool that:
- Crawls your website
- Finds problems
- Explains what they mean
- Fixes many of them
- Lets you verify the results
It also looks beyond traditional SEO.
SEO
It checks things like:
- Meta titles and descriptions
- Canonicals
- Open Graph
- Structured data
- Sitemaps
- robots.txt
- Internal links
- Broken links
- Duplicate content
- Images
- Page structure
Accessibility
It looks for things such as:
- Missing alt text
- Missing labels
- ARIA problems
- Semantic HTML issues
- Keyboard accessibility problems
- Contrast issues
Performance
It can analyze performance characteristics and optionally pull real PageSpeed Insights data.
And then there's the interesting part: AI visibility
Search isn't the only place people discover websites anymore.
People increasingly ask ChatGPT, Claude, Perplexity and other AI systems questions instead of searching manually.
So I added GEO and AEO audits.
OptiQra checks things like:
- Whether AI crawlers are blocked
- Whether important content is hidden behind client-side JavaScript
- Whether pages contain citation-friendly content
- Whether your site has useful entity signals
- Whether content can be easily extracted into answers
- Whether your content is structured around questions people actually ask
I'm still experimenting with exactly how useful all of these signals are, but I think this is going to become an increasingly important part of website optimization.
But finding problems wasn't enough
This was the part that annoyed me most about existing tools.
If a tool tells me:
"Your page is missing a meta description."
I don't really need a tool to tell me that.
I need it to fix it.
So OptiQra has several layers of fixing.
Deterministic fixes
For things that don't require AI, OptiQra fixes them deterministically.
For example:
Missing attribute
↓
Detect
↓
Generate deterministic change
↓
Apply
↓
Verify
No AI hallucination required.
AI-assisted fixes
For things that actually require writing, you can connect your own AI provider.
OptiQra supports providers including:
- OpenAI
- Anthropic
- Groq
- OpenRouter
- Mistral
- DeepSeek
- xAI
You bring your own API key.
OptiQra doesn't need its own AI subscription.
Full AI Fix
There's also a more aggressive mode.
Instead of asking an AI model to fix one tiny issue at a time, OptiQra can give it an entire file along with the detected problems and ask it to return the corrected file.
Obviously, handing an AI an entire source file and letting it rewrite things needs safeguards.
So I added integrity checks that verify the result before accepting the modification.
If the result violates structural invariants, the change gets discarded.
It can audit your codebase too
This is another feature I really wanted.
A live website crawler can only see the final website.
It can't see:
next.config.js
robots configuration
source files
framework configuration
build configuration
So OptiQra can also audit an actual project.
You can upload a project archive and have it analyze the codebase itself.
That means it can find problems that aren't necessarily visible from the rendered website and make framework-aware fixes.
It currently understands things like:
- HTML
- JSX / TSX
- Vue
- Nuxt
- Angular
- Svelte
- Astro
I also went a little overboard
At some point I decided a normal crawl tree wasn't interesting enough.
So OptiQra has an interactive 3D / "galaxy" visualization of your website.
Instead of:
Home
├── About
├── Blog
│ ├── Post 1
│ └── Post 2
└── Contact
you can explore the site visually.
Is this necessary for SEO?
Absolutely not.
Is it fun?
Yes.
It runs locally too
OptiQra is a web app, but there's also a native desktop version built with Tauri.
The desktop version is useful for things like:
- Offline project audits
- Background scheduled scans
- Native notifications
- Running scheduled tasks after the window is closed
The audit engine is shared between the web and desktop versions.
Everything is open source
The whole thing is MIT licensed.
You can inspect the code, run it yourself, modify it, or contribute.
There are no accounts required for the basic web app.
And AI features use your own API keys rather than forcing you into a proprietary subscription.
So... is it actually useful?
That's the part I'm still figuring out.
I built OptiQra because I wanted this workflow:
Website
↓
Crawl
↓
Audit
↓
Find problems
↓
Fix them
↓
Verify
↓
Scan again
Instead of:
Website
↓
Audit
↓
47 warnings
↓
¯\_(ツ)_/¯
I'm not claiming I've solved website optimization.
There are already extremely mature tools in this space.
I'm trying to build something that feels more like a developer tool than a report generator.
And honestly, I'd like to know whether that's actually useful to other developers.
Try it
If you want to play with it, I put a live version here:
No signup required.
The project is also on GitHub:
https://github.com/armin5872/OptiQra
If you try it, I'd genuinely like to know:
What would make you actually keep using a tool like this?
Because that's the part I'm working on next.
Top comments (1)
The fix-it part is where the product gets interesting, but it also needs a very clear approval model. An auditor can be advisory by default; once it starts editing, I want diffs, confidence labels, and a rollback path so the user can trust the automation.