Skip to content

daskeyboard/daskeyboard-applet--action-status-for-github

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

61 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🚀 GitHub Actions Status Applet for Das Keyboard Q

Status of GitHub Actions

💡 Real-time GitHub Actions monitoring directly on your Das Keyboard Q Series

Repo: https://github.com/daskeyboard/daskeyboard-applet--action-status-for-github

🎯 Overview

This applet transforms your Das Keyboard Q into a live GitHub Actions dashboard! 🎹✨ Monitor your repository's CI/CD pipeline status with instant visual feedback through dynamic LED colors.

✨ Key Features

🔥 Real-time Monitoring: Instant updates on GitHub Actions status 🔄 Multi-Repository Support: Track multiple repos by adding the applet multiple times 🎨 Color-Coded Status Indicators:

  • 🟢 Green: All actions successful ✅
  • 🔴 Red: Actions failed ❌
  • 🟠 Blinking Orange: Actions running

🛠️ Developer Quick Start

📋 Prerequisites

🚀 Installation

  1. Install dependencies:

    yarn install
  2. Configure your GitHub token:

    • Generate a personal access token with repo scope
    • Configure during applet installation in Q Desktop
  3. Select your repository:

    • Choose the repository you want to monitor
    • The applet will automatically start tracking

🧪 Testing

Run the comprehensive test suite:

yarn test

Test Coverage:

  • ✅ Pending actions scenarios
  • ✅ Successful actions validation
  • ✅ Failed actions handling
  • ✅ API response parsing
  • ✅ Error handling and edge cases

🔧 Configuration Options

Parameter Description Required
Repository Target GitHub repository (owner/repo)
API Token GitHub personal access token
Polling Interval How often to check status (default: 60s)
Key Position Which key to illuminate

🏗️ Architecture

┌─────────────────┐    ┌─────────────────┐    ┌─────────────────┐
│   GitHub API    │◄──►│   Das Keyboard  │◄──►│   Q Desktop     │
│   (Actions)     │    │   Q Applet      │    │   Application   │
└─────────────────┘    └─────────────────┘    └─────────────────┘

📡 API Integration

The applet uses the GitHub Actions API to:

  • 🔍 Fetch workflow runs
  • 📊 Aggregate status across all workflows
  • ⚡ Provide real-time updates

🐛 Troubleshooting

Common Issues:

🔴 Red Key Not Clearing:

  • Check if failed actions have been re-run
  • Verify API token permissions

🟠 Orange Key Stuck:

  • Ensure workflows aren't stuck in pending state
  • Check repository webhook configuration

🔑 API Authentication:

  • Verify token has correct scopes (repo minimum)
  • Check token expiration date

🤝 Contributing

  1. Fork the repository
  2. Create a feature branch: git checkout -b feature/amazing-feature
  3. Make your changes
  4. Run tests: yarn test
  5. Commit your changes: git commit -m 'Add amazing feature'
  6. Push to branch: git push origin feature/amazing-feature
  7. Open a Pull Request

📚 Documentation

🏆 Credits

Originally created by SoulaymaneK 👨‍💻

📄 License

This project is licensed under the MIT License - see the LICENSE file for details.


🎹 Happy Coding with Das Keyboard Q!

About

Tracking the progress of GitHub Actions within a repository

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages

  • JavaScript 100.0%