Inspiration
If there was a tool to view Baseline information from the CLI, developers wouldn't need to open a browser and check multiple sites when researching which features are available for their projects. This would eliminate context-switching costs. I realized this could be achieved using web-features, which motivated me to build this tool.
What it does
- Search and browse Baseline status of web platform features directly from your terminal
- View features whose Baseline status changed in the last 28 days, making it easy to stay updated on the latest Baseline information
- Select any feature in the CLI to view detailed data managed by web-features
How we built it
I built it using ink, a popular framework for modern CLI tools. The tool uses feature information provided by web-features as its data source, and displays baseline information for each feature's compat_features using the getStatus() method from compute-baseline.
Challenges we ran into
Understanding the data structure managed by web-features took considerable time. Since displaying accurate information to users was my top priority, I carefully studied the data model. Additionally, I didn't initially use ink when starting the project, but migrated to it later to provide a more interactive and better user experience. This decision turned out to be the right choice.
Accomplishments that we're proud of
- No npm install or setup required, with a package size of only about 30kb (at the time of writing), making it easy to access Baseline information directly from the CLI
- When listing features, Baseline status is represented by color-coded markers, providing superior browsing experience compared to other existing tools
What we learned
- I learned about CLI tool design and development methodologies
- When browsing features with
baseline-search, I discovered there were more "limited available" features than I expected, which reminded me how actively web development is evolving
What's next for Baseline Search
- Refactor the codebase for better maintainability
- Currently, the tool has three main features, but I want to integrate them into a unified interface so users can access the information they need with fewer clicks
- While the tool currently focuses on features and their Baseline status, I believe it would be even more useful to provide additional information related to Baseline (though I would proceed with extreme caution to avoid spreading misinformation or outdated data)



Log in or sign up for Devpost to join the conversation.