Optimize is officially public

For the past 6-months we've been developing Optimize among a small group of people who signed up to our invite-only beta. Today, Optimize is publicly available on npm. To get started:

# Install Optimize
npm install @bynovl/optimize
# Run your first audit
npx optimize

Why Optimize

Across the projects we work on, we kept running into the same pattern: SEO validation happened weeks after deployment, when fixes were expensive. By the time an audit flagged a canonicalization issue or a broken schema property, search engines had already indexed the structure, backlinks pointed at URLs we'd have to redirect, and reindexing meant waiting weeks for recovery.

The frustrating part wasn't the bugs themselves — most were trivial to fix. It was the timing. Every one of them was cheap to catch before deployment and costly to catch after.

So we built the check we wished existed: something that runs against build output, before anything reaches a server.

A deeper dive

SEO is composed of three layers.

  1. Foundation (pre-launch). Technical SEO, site structure, Core Web Vitals, canonicalization, schema markup, indexation controls, and accessibility (WCAG, ARIA, alt text). These are architectural. Once a site is live and accumulating traffic and links, changing them is disruptive and slow.

  2. Mid-layer (ongoing). Content optimization, keyword targeting, backlink building, performance tuning. Iterative by nature, and the layer most tools serve well.

  3. Application (emerging). MCP integration, AI search visibility, GEO optimization. Genuinely new territory, and where most of the current conversation is happening.

Most industry tools are concentrated on the mid-layer and application layers. But the Foundation layer is where mistakes compound. It's also the layer where validation is easiest, because at build time you have complete static knowledge of the document. Nothing is unknown yet.

Optimize targets the Foundation, at the last moment before deployment. It's where the insight from the mid and application layers can be applied and validated.

How it's designed

Zero-config by default. Optimize ships with industry baselines that enforce requirements on every page. You don't need to configure anything to get value from the first run. When you do need to relax a rule or add a check specific to your project, optimize.config.js gives you full control — extensibility exists for teams with stricter standards, not as a prerequisite.

Local-first. No cloud server, no login, no third-party data. It's built to run in your CI pipeline as a deployment gate, not as a periodic audit of a live site. It's privacy-by-design.

Framework-agnostic. Optimize works against your static HTML build output — Astro, Next.js, Eleventy, or any static site generator that produces .html files. Get feedback on what actually ships, before it hits the server. Anything injected at runtime is out of scope.

AI-agnostic. Optimize doesn't depend on any particular model, provider, or assistant. The same build output produces the same findings every time and results are emitted as plain markdown or JSON that any tool can read.

Where it fits

Optimize is a deterministic quality gate, not a dashboard (although you can create one using the engine). There are three places it slots into a workflow:

In the dev loop. Run it against your build output locally before you push. Findings surface while the context is still fresh and the fix is still cheap.

In CI. Wire it in as a step between build and deploy, so a failing check stops the release rather than becoming a ticket. Output a markdown audit report as a build artifact, or JSON if you want to feed it somewhere downstream.

Alongside an assistant, optionally. Four skills extend Optimize for individuals and teams who want an assistant in the loop:

Used together they cover the arc from requirements to repaired output. None of them are required: the CLI produces the same findings on its own, and the gate functions whether or not an assistant is involved. The skills are additive.

What's next

Now that Optimize is public, we're looking for a wider set of eyes on it and feedback. For now the project will remain in beta as we build in public and refine. As web standards change, we'll continue to update the core checks along with new features that make it easy for SEOs and Developers to work together. If you see a bug, report an issue. For general discussion, support and ideas join the discussion.

Together, let's optimize the web. No site left behind.