Inspiration
As web developers, we constantly face the challenge of adopting new web features while ensuring cross-browser compatibility. The inspiration came from repeatedly asking, "Is this feature safe to use yet?" and spending hours checking MDN, caniuse, and GitHub issues. We wanted to bring Baseline data directly into developer workflows to eliminate this friction.
What it does
Baseline Impact Copilot is a comprehensive toolchain that:
IDE Integration: Provides real-time diagnostics in VS Code with quick fixes for risky web features
CI/CD Ready: Integrates with GitHub Actions to analyze pull requests and generate Baseline Impact Reports
Smart Fixes: Offers automated codemods and patch generation for common compatibility issues
Policy Enforcement: Allows teams to set minimum baseline years and ignore rules via baseline.config.json
How we built it
Core Engine: Pure JavaScript with Node.js for maximum compatibility
VS Code Extension: Uses the Language Server Protocol for efficient diagnostics
CLI Tool: Built with Commander.js, supporting multiple output formats (Markdown, SARIF)
GitHub Action: Leverages GitHub's API for PR comments and artifact management
Testing: Comprehensive test suite with Jest, covering 90%+ of codebase
Challenges we ran into
Diff-Aware Analysis: Implementing precise line mapping for GitHub's diff view required careful handling of git's diff output
Performance: Optimizing the AST traversal to handle large codebases without noticeable lag
Cross-Platform Support: Ensuring consistent behavior across Windows, macOS, and Linux environments
False Positives: Fine-tuning detection heuristics to minimize noise while maintaining accuracy
Accomplishments that we're proud of
Zero-Config Setup: Developers can get started with just npx @baseline-impact-copilot/cli scan
Enterprise-Grade Integration: Full support for GitHub's Code Scanning and Security tab
Educational Value: Built-in Playbook links help developers learn while they work
Performance: Scans 10,000+ LOC in under 2 seconds
What we learned
The importance of incremental adoption - our tool needed to work with existing codebases How to effectively use GitHub's APIs for automated code review The value of structured data in developer tools (thanks to Baseline's clear feature definitions) How to balance automated fixes with developer control
What's next for Baseline Impact Copilot
Framework Integration: Adding support for React, Vue, and Svelte
Runtime Monitoring: Tracking actual browser usage to inform baseline decisions
Editor Extensions: Expanding to WebStorm, Vim, and other popular editors
Team Features: Collaborative baselining and exception management
Automated Testing: Generating cross-browser test cases based on feature usage
Technical Highlights
Modular Architecture: Core engine works independently of any specific editor or CI system
Extensible Ruleset: Easy to add new feature detections and fixes
Comprehensive Testing: 90%+ test coverage with regression tests for all fixes
Production Ready: Used daily in our own development workflow
Built With
- anguage-server-protocol-(lsp)
- css/scss/less
- git
- javascript
- node.js
- typescript
- vs-code-diagnostic-api
- vs-code-extension-api
- vsce
Log in or sign up for Devpost to join the conversation.