We will be undergoing planned maintenance on January 16th, 2026 at 1:00pm UTC. Please make sure to save your work.

Inspiration

As developers, we've all felt the friction of adopting modern web features. The constant question, "Can I use this yet?" leads to endless checks on sites like caniuse.com and slows down innovation. Now, with the rise of AI code assistants, this problem is magnified. These tools are incredibly powerful, but they often generate code using non-standard or poorly-supported features without warning, creating a new layer of risk for production applications. We were inspired to build a tool that bridges this gap—a safety net that allows developers to embrace AI code generation with confidence and trust.

What it does

BaseLint is an AI code governance tool that acts as an intelligent guardrail for AI-generated code. A developer provides a prompt for a UI component, and BaseLint forwards it to an AI to generate the CSS. However, before presenting it to the user, BaseLint's core "governor" engine parses the code and validates every single CSS property against the official Web Platform Baseline standard. The final output clearly shows the AI's raw code alongside a validation report, instantly flagging any properties that are not yet universally supported, ensuring developers only ship robust, production-ready code.

How we built it

We built this prototype rapidly using a modern, focused tech stack, hosted entirely on Replit.

Backend API: The core governor logic is a Node.js server built with the lightweight Fastify framework.

Baseline Data: We used the official web-features npm package as our canonical source of truth for browser compatibility data.

CSS Parsing: We used PostCSS to parse the AI-generated stylesheet into an Abstract Syntax Tree (AST), allowing us to programmatically inspect every property.

AI Integration: The backend communicates with the OpenAI API to generate the initial CSS from user prompts.

Frontend Interface: The demo UI is a simple, effective static HTML page with vanilla JavaScript that makes fetch calls to our backend API.

Challenges we ran into

The most significant challenge was handling the unpredictable nature of the AI's output. Sometimes the LLM would "hallucinate" CSS properties that don't exist (like display: hide;) or generate code with minor syntax errors. This forced us to make our PostCSS parsing logic more resilient and error-tolerant, ensuring our application wouldn't crash and could still provide value even with imperfect input. It was a great lesson in defensive programming against a non-deterministic system.

Accomplishments that we're proud of

We are incredibly proud of building a fully functional, end-to-end prototype in such a short amount of time. Getting the full loop working—from a user's text prompt, to the AI, through our validation engine, and back to the UI—was a huge accomplishment. We're also proud of the clarity of the final demo; the side-by-side comparison of the raw AI output and our validation results makes the value proposition of BaseLint instantly clear and impactful.

What we learned

This project reinforced how critical a clear standard like Baseline is for the future of web development. While building BaseLint, we learned firsthand that raw AI-generated code, while impressive, often lacks the production-readiness and reliability required for professional work. We learned that the true power of AI in development won't just be in generation, but in the systems we build around it to ensure quality, safety, and adherence to standards.

What's next for BaseLint

This prototype is just the beginning. We envision BaseLint evolving from a simple web tool into an essential part of the modern developer's workflow. The next steps would be to:

Develop a VS Code Extension: To provide real-time validation on AI-generated code directly within the editor.

Create a CI/CD GitHub Action: To automatically scan pull requests for non-Baseline compliant code, preventing it from ever reaching production.

Build a Browser Extension: To analyze CSS on any webpage and highlight which features are part of Baseline, turning the web into a learning tool.

Built With

Share this project:

Updates