Inspiration

As web developers, we often ask ourselves: “Is this feature safe to use in production?” Jumping between MDN, caniuse.com, and blog posts just to answer this slows us down. The Baseline project promises to fix this — but we noticed there weren’t many tools that let you automatically check code against Baseline during development or in CI. That’s what inspired us to build baseline-ci-checker: a tool that makes Baseline adoption effortless.

What it does

Scans your JavaScript/TypeScript files.

Detects any non-Baseline web features being used.

Reports results directly in your terminal and GitHub Actions CI.

Gives developers instant feedback so they can avoid compatibility pitfalls before deployment.

In short: it saves developers from guessing if a feature is safe, and integrates directly into their workflow.

How we built it

Node.js CLI – built a command-line tool using Node.js and Chalk for colored output.

web-features dataset – powered by the official Baseline web-features package.

File scanning – used glob to parse project files and match feature usage.

CI integration – wrote a GitHub Action workflow (baseline.yml) so checks run automatically on every push or pull request.

Challenges we ran into

Figuring out how to properly import and use the web-features dataset (it wasn’t straightforward).

Handling different module systems (CommonJS vs. ES Modules) in Node.js.

Parsing project files in a way that works across different setups.

Debugging cryptic Node.js errors while learning how Baseline exports work.

Accomplishments that we're proud of

Built a working CLI tool from scratch that integrates Baseline into developer workflows.

Successfully hooked it up with GitHub Actions to automate compatibility checks.

Made the output clean, simple, and developer-friendly.

Learned how to take a raw dataset (web-features) and turn it into something practical.

What we learned

How Baseline defines and manages feature support across browsers.

How to build and publish Node.js CLI tools.

How to connect local developer tools with CI/CD pipelines.

That solving “small” developer pain points can have a big productivity impact.

What’s next for baseline-ci-checker

Add IDE integration (e.g., VS Code extension) for instant feedback while coding.

Expand beyond JS/TS to also check HTML/CSS features.

Provide config options (e.g., ignore certain files, only warn instead of fail).

Publish as an npm package so developers can install it globally.

Build a dashboard/report generator to visualize non-Baseline usage trends across large projects.

Built With

Share this project:

Updates