{"id":17238059,"url":"https://github.com/jsantell/fx-devtools-bot","last_synced_at":"2025-06-20T14:11:46.632Z","repository":{"id":18327221,"uuid":"21506339","full_name":"jsantell/fx-devtools-bot","owner":"jsantell","description":"Bot that tweets for Firefox Dev Tools on every landed patch.","archived":false,"fork":false,"pushed_at":"2014-07-16T19:47:33.000Z","size":232,"stargazers_count":1,"open_issues_count":3,"forks_count":1,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-06-20T14:11:32.447Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"http://twitter.com/fxdevtoolsbot","language":"Go","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/jsantell.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2014-07-04T19:37:02.000Z","updated_at":"2014-07-13T16:23:18.000Z","dependencies_parsed_at":"2022-08-25T13:01:07.421Z","dependency_job_id":null,"html_url":"https://github.com/jsantell/fx-devtools-bot","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/jsantell/fx-devtools-bot","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jsantell%2Ffx-devtools-bot","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jsantell%2Ffx-devtools-bot/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jsantell%2Ffx-devtools-bot/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jsantell%2Ffx-devtools-bot/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jsantell","download_url":"https://codeload.github.com/jsantell/fx-devtools-bot/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jsantell%2Ffx-devtools-bot/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":260959198,"owners_count":23088823,"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":[],"created_at":"2024-10-15T05:44:34.549Z","updated_at":"2025-06-20T14:11:41.613Z","avatar_url":"https://github.com/jsantell.png","language":"Go","readme":"fx-devtools-bot\n===============\n\n[![Build Status](http://img.shields.io/travis/jsantell/fx-devtools-bot.svg?style=flat)](https://travis-ci.org/jsantell/fx-devtools-bot)\n\nTweets for [@FirefoxDevtools](https://twitter.com/firefoxdevtools) on every landed patch.\n\nTwitter account: [@fxdevtoolsbot](https://twitter.com/fxdevtoolsbot)\n\n## Using\n\nFetch using `go get`\n\n```\n$ go get github.com/jsantell/fx-devtools-bot\n```\n\nOr clone this repository and install dependencies:\n\n```\n$ go get github.com/jsantell/go-githubstream\n$ go get github.com/ChimeraCoder/anaconda\n$ go get github.com/bitly/go-simplejson\n```\n\nThe following environment variables will need to be set with their obvious values:\n\n```\nFX_DEVTOOLS_BOT_GITHUB_TOKEN\nFX_DEVTOOLS_BOT_CONSUMER_KEY\nFX_DEVTOOLS_BOT_CONSUMER_SECRET\nFX_DEVTOOLS_BOT_ACCESS_TOKEN\nFX_DEVTOOLS_BOT_ACCESS_TOKEN_SECRET\n```\n\nBuild and run\n\n```\n$ go build . \u0026\u0026 ./fx-devtools-bot\n\n```\n\n## Extending\n\nTo extend this for your own commit bot, modify `FilterCommits` to ignore commits as type `github.RepositoryCommit` that can be done on the first pass of filtering (like ignoring merge commits, etc.). Then instantiate a custom Commit object (just needs to implement `FormatMessage() string` and `IsValid() bool` for filtering that may require calling an external API, like in this case, calling Bugzilla's API to ensure it's in the Developer Tools component. You may also need to change the environment variables set mentioned in `Using`.\n\n## Testing\n\nCurrently the `bz-commit_test` test queries the Bugzilla API, so be polite on running this.\n\n## License\n\nMIT License, Copyright (c) 2014 Jordan Santell\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjsantell%2Ffx-devtools-bot","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjsantell%2Ffx-devtools-bot","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjsantell%2Ffx-devtools-bot/lists"}