{"id":18451762,"url":"https://github.com/SantiMA10/devops-streamdeck","last_synced_at":"2025-04-08T02:32:44.746Z","repository":{"id":38414751,"uuid":"247329890","full_name":"SantiMA10/devops-streamdeck","owner":"SantiMA10","description":"👀 Check the status of your CI/CD environments using your Stream Deck.","archived":false,"fork":false,"pushed_at":"2024-11-21T18:10:40.000Z","size":1787,"stargazers_count":100,"open_issues_count":13,"forks_count":12,"subscribers_count":3,"default_branch":"main","last_synced_at":"2025-04-06T00:08:08.760Z","etag":null,"topics":["cd","ci","github-actions","gitlab-ci","hacktoberfest","netlify","stream-deck","travis-ci","vercel"],"latest_commit_sha":null,"homepage":"","language":"CSS","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/SantiMA10.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null},"funding":{"github":null,"patreon":null,"open_collective":null,"ko_fi":null,"tidelift":null,"community_bridge":null,"liberapay":null,"issuehunt":null,"otechie":null,"custom":["https://www.twitch.tv/santima10"]}},"created_at":"2020-03-14T18:18:09.000Z","updated_at":"2024-10-09T03:46:23.000Z","dependencies_parsed_at":"2024-12-16T18:28:17.909Z","dependency_job_id":"5836d516-a930-4662-978a-4933e614ab91","html_url":"https://github.com/SantiMA10/devops-streamdeck","commit_stats":null,"previous_names":[],"tags_count":7,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SantiMA10%2Fdevops-streamdeck","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SantiMA10%2Fdevops-streamdeck/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SantiMA10%2Fdevops-streamdeck/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SantiMA10%2Fdevops-streamdeck/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/SantiMA10","download_url":"https://codeload.github.com/SantiMA10/devops-streamdeck/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247764826,"owners_count":20992183,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cd","ci","github-actions","gitlab-ci","hacktoberfest","netlify","stream-deck","travis-ci","vercel"],"created_at":"2024-11-06T07:29:36.597Z","updated_at":"2025-04-08T02:32:44.721Z","avatar_url":"https://github.com/SantiMA10.png","language":"CSS","readme":"# DevOps for Stream Deck \u003c!-- omit in toc --\u003e [![Custom badge](https://img.shields.io/endpoint?url=https%3A%2F%2Felgatostore-badge.herokuapp.com%2F%3Fidentifier%3Ddev.santiagomartin.devops)](https://github.com/SantiMA10/elgatostore-badge) [![Node.js CI](https://github.com/SantiMA10/devops-streamdeck/actions/workflows/nodejs.yml/badge.svg)](https://github.com/SantiMA10/devops-streamdeck/actions/workflows/nodejs.yml)\n\n\u003e Check the status of your CI/CD environments or Notifications using your Stream Deck\n\n- [How it works?](#how-it-works)\n  - [Install this plugin](#install-this-plugin)\n  - [Configuration options](#configuration-options)\n  - [Compatible services](#compatible-services)\n    - [GitHub](#github)\n      - [For public repositories](#for-public-repositories)\n      - [For public/private repositories](#for-publicprivate-repositories)\n      - [For Notifications](#for-notifications)\n    - [GitLab](#gitlab)\n    - [Netlify](#netlify)\n    - [Vercel](#vercel)\n    - [Travis-CI.com / Travis-CI.org](#travis-cicom--travis-ciorg)\n  - [How to setup the dev environment](#how-to-setup-the-dev-environment)\n    - [Project structure](#project-structure)\n  - [References](#references)\n  - [Contributing](#contributing)\n  - [Support the project](#support-the-project)\n  - [Issues](#issues)\n\n# How it works?\n\n## Install this plugin\n\nYou can find it at the Stream Deck Store. 🚀\n\n## Configuration options\n\n| Field           | Description                                                                                                              | Service                                 | Required |\n| --------------- | ------------------------------------------------------------------------------------------------------------------------ | --------------------------------------- | -------- |\n| `account`       | Here you can select your [Personal Token](#get-you-personal-token) and custom `domain` if you use a self-hosted version. | GitHub, GitLab, Netlify, Vercel, Travis | Yes      |\n| `username/repo` | Configure here the repo for GitLab/GitHub                                                                                | GitHub, GitLab, Travis                  | Yes      |\n| `siteId`        | Your [Netlify Site Id](#site-id)                                                                                         | Netlify                                 | Yes      |\n| `project name`  | Your project name in Vercel                                                                                              | Vercel                                  | Yes      |\n| `branch`        | Select the branch to monitor or leave it empty to show info from all branches.                                           | GitHub, GitLab, Netlify, Travis         | No       |\n\n## Compatible services\n\n### GitHub\n\n\u003cdetails\u003e\n \u003csummary\u003eShow information\u003c/summary\u003e\n\n#### For public repositories\n\nYou have to create a new [Personal Token](https://github.com/settings/tokens) with the following scopes: **repo:status**, **repo_deployment** and **public_repo**.\n\n![image](https://user-images.githubusercontent.com/7255298/76707971-b819b500-66f3-11ea-8392-84ee9bb67deb.png)\n\n#### For public/private repositories\n\nYou have to create a new [Personal Token](https://github.com/settings/tokens) with all the repo scopes, otherwise you don't have access to your private repositories.\n\n![image](https://user-images.githubusercontent.com/7255298/109531364-17650680-7ab8-11eb-8172-bd658820f5da.png)\n\n#### For Notifications\n\nYou have to create a new [Personal Token](https://github.com/settings/tokens) with notifications scopes, otherwise you don't have access to your notifications.\n\n![image](https://raw.githubusercontent.com/SantiMA10/devops-streamdeck/main/.github/images/notification-token.png)\n\n\u003c/details\u003e\n\n### GitLab\n\n\u003cdetails\u003e\n \u003csummary\u003eShow information\u003c/summary\u003e\n\nYou have to create a new [Personal Access Token](https://gitlab.com/profile/personal_access_tokens). Set the scope as follows:\n\n| Required for |    Scope    |\n|--------------|:-----------:|\n| CI Status    | `read_api`  |\n| MRs          | `read_api`  |\n| ToDos        | `read_user` |\n\n\u003c/details\u003e\n\n### Netlify\n\n\u003cdetails\u003e\n \u003csummary\u003eShow information\u003c/summary\u003e\n\n#### Personal Token \u003c!-- omit in toc --\u003e\n\nYou have to create a new [Personal Token](https://app.netlify.com/user/applications#personal-access-tokens).\n\n#### Site ID \u003c!-- omit in toc --\u003e\n\nYou can find your site id in the settings tab of your project, with the **API ID** name.\n\n\u003c/details\u003e\n\n### Vercel\n\n\u003cdetails\u003e\n \u003csummary\u003eShow information\u003c/summary\u003e\n\nYou have to create a new [Token](https://vercel.com/account/tokens).\n\n\u003c/details\u003e\n\n### Travis-CI.com / Travis-CI.org\n\n\u003cdetails\u003e\n \u003csummary\u003eShow information\u003c/summary\u003e\n\nYou have to create a new [Token](https://developer.travis-ci.com/authentication).\n\nBy default the actions uses the **travis-ci.org** api, if you want to use it with **travis-ci.com** set https://api.travis-ci.com as domain in the configuration.\n\n\u003c/details\u003e\n\n## How to setup the dev environment\n\n1. Install all the dependencies\n\n```shell\nyarn\n```\n\n2. Build the project for the first time, the project uses [Parcel as bundler](https://parceljs.org/) to handle React and TypeScript\n\n```shell\nyarn build\n```\n\n3. Create a symlink form the folder you clone the repository\n\n```shell\nln -s devops-streamdeck/dist/dev.santiagomartin.devops.sdPlugin ~/Library/Application\\ Support/com.elgato.StreamDeck/Plugins/dev.santiagomartin.devops.sdPlugin\n```\n\n1. Run the proper dev command, since we are using Parcel to build the project we have a few dev commands to start Parcel in watch mode\n\n```parcel\n// For Property Inspector\nyarn:dev:pi\n\n// For Plugin\nyarn:dev:plugin\n\n// For setup screen, where the user add the configuration for each service\nyarn:dev:setup\n```\n\n### Project structure\n\n```text\n    .\n    ├── node_modules\n    ├── dist\n    ├── images\n    ├── node_modules\n    ├── release\n    ├── src\n      ├── dev.santiagomartin.devops.sdPlugin\n        ├── pi // all code related with Property Inspector (build with React and TypeScript)\n        ├── plugin // all code related with Plugin (build with TypeScript)\n        ├── setup // all code related with Setup page (build with React and TypeScript)\n    ├── tools // contains the elgato tools to build the project using GitHub Actions\n    ├── .babelrc\n    ├── .gitignore\n    ├── jest.config\n    ├── LICENSE\n    ├── manifest.json\n    ├── package.json\n    ├── README.md\n    ├── tsconfig.json\n    └── yarn.lock\n```\n\n## References\n\n- [Steam Deck SDK docs](https://developer.elgato.com/documentation/)\n\n## Contributing\n\nThank you for considering contributing to the **DevOps for Stream Deck**. Feel free to send in any pull requests.\n\n## Support the project\n\nIf you like the project, you can subscribe to my [Twitch channel](https://twitch.tv/santima10), where I do live coding of this and other projects.\n\n## Issues\n\nPlease report any [issues](https://github.com/SantiMA10/devops-streamdeck/issues). Ideas for new excuse features are also welcomed.\n","funding_links":["https://www.twitch.tv/santima10"],"categories":["CSS"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FSantiMA10%2Fdevops-streamdeck","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FSantiMA10%2Fdevops-streamdeck","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FSantiMA10%2Fdevops-streamdeck/lists"}