Sideline - VS Code Sports Extension![]() The Ultimate Sports Companion for DevelopersNever miss a game while you code. Never miss a deadline while you watch. ![]() ![]() ![]() ![]() ![]()
|
Sport | Status | Coverage |
---|---|---|
![]() |
✅ Live | Full season |
![]() |
✅ Live | Full season |
![]() |
✅ Live | Full season |
![]() |
✅ Live | Full season |
![]() |
✅ Live | Full season |
Quick Start Guide
1. Install Sideline
- Open VS Code Extensions (
Ctrl+Shift+X
) - Search for "Sideline"
- Click Install
2. Open Your Sports Dashboard
- Click the Sideline icon in the Activity Bar
- Or use Command Palette (
Ctrl+Shift+P
) → "View Games"
3. Start Tailing Games
- Browse all current games across all sports
- Search for your favorite teams
- Click "Tail Game" on games you want to follow
- Get notified when scores change
- View your games in the sidebar widgets
4. Customize Your Experience
- Configure refresh intervals in VS Code settings
- Filter games by status (Live, Completed, Upcoming, Tailed)
- Collapse sport sections to focus on what matters
- Search teams by name or abbreviation
Configuration
Refresh Intervals
{
"sideline.refreshInterval": 30 // 10-300 seconds
}
Available Settings
- Refresh Interval: How often to check for updates
- Auto-refresh: Enable/disable automatic updates
- Notifications: Control score change notifications
Development
Prerequisites
- Node.js v16+
- VS Code latest version
- TypeScript knowledge (optional)
Build from Source
# Clone the repository
git clone https://github.com/yourusername/sideline.git
cd sideline
# Install dependencies
npm install
# Compile TypeScript
npm run compile
# Run in development mode
F5 in VS Code
Project Architecture
sideline/
├── 🎯 src/
│ ├── extension.ts # Main entry point
│ ├── sidelineProvider.ts # Main webview provider
│ ├── trackedGamesProvider.ts # Sidebar widget provider
│ ├── liveGameTracker.ts # Game tracking & notifications
│ ├── sportsApi.ts # ESPN API integration
│ ├── webview.html # Main UI (1177 lines of awesome!)
│ └── teamColors.ts # Team branding data
├── 📦 package.json # Extension manifest
├── ⚙️ tsconfig.json # TypeScript config
└── 📖 README.md # This masterpiece
API Integration
- ESPN Public APIs - No keys required
- Real-time data - Live scores and game status
- Multiple endpoints - One for each sport
- Error handling - Graceful fallbacks
Use Cases
For Developers
- Stay connected to games while coding
- Quick score checks without leaving your editor
- Fantasy sports management during work hours
- Team notifications for important games
For Sports Fans
- Multi-sport tracking in one place
- Real-time updates without browser switching
- Clean interface focused on what matters
- Persistent tracking across sessions
For Teams
- Game day monitoring during development
- Score tracking for team events
- Sports-themed development environment
- Fun productivity tool
Contributing
We love contributions! Here's how you can help:
Ways to Contribute
- 🐛 Report bugs - Help us squash those pesky issues
- 💡 Suggest features - Tell us what you want to see
- 🔧 Submit PRs - Code contributions are always welcome
- 📖 Improve docs - Help others understand the project
- ⭐ Star the repo - Show your support
Development Setup
# Fork and clone
git clone https://github.com/yourusername/sideline.git
# Create feature branch
git checkout -b feature/amazing-feature
# Make changes and test
npm run compile
F5 in VS Code
# Submit PR
git push origin feature/amazing-feature
Acknowledgments
- ESPN for providing the sports data APIs
- VS Code team for the amazing extension platform
- Open source community for inspiration and tools
- Sports fans everywhere for the motivation to build this