Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/tohjustin/aegis
Badge generation service
https://github.com/tohjustin/aegis
badge badge-generator github metadata status svg
Last synced: about 1 month ago
JSON representation
Badge generation service
- Host: GitHub
- URL: https://github.com/tohjustin/aegis
- Owner: tohjustin
- License: mit
- Created: 2018-04-27T21:32:33.000Z (over 6 years ago)
- Default Branch: master
- Last Pushed: 2021-07-26T13:30:09.000Z (over 3 years ago)
- Last Synced: 2024-06-20T20:04:54.116Z (6 months ago)
- Topics: badge, badge-generator, github, metadata, status, svg
- Language: Go
- Homepage: https://aegisbadges.appspot.com
- Size: 3.35 MB
- Stars: 2
- Watchers: 3
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
## About
[![CircleCI](https://circleci.com/gh/tohjustin/aegis/tree/master.svg?style=shield&circle-token=fbdca44ece1ce1c6e2a907a530476138578946a2)](https://circleci.com/gh/tohjustin/aegis/tree/master)
[![Font Awesome](https://aegisbadges.appspot.com/static?icon=brands/font-awesome&subject=Font%20Awesome&status=v5.12.0&color=318FE0)](https://fontawesome.com/)
[![Release](https://aegisbadges.appspot.com/static?subject=release&status=v1.0.0)](https://github.com/tohjustin/aegis/releases)
[![License](https://aegisbadges.appspot.com/static?subject=license&status=MIT)](https://opensource.org/licenses/MIT)Aegis is a SVG badge generation service, icons powered by [Font Awesome](https://fontawesome.com/https://fontawesome.com/).
## Usage
### Query Parameters
> NOTE: You can use these query parameters to modify any badges generated from badge services below.
Query parameters for configuring your badge appearance.
| Query Parameter | Description | Input Format | Example |
| --------------- | ---------------------------- | -------------------------------------------------------------------------------------------------- | --------------------------------------------- |
| color | Sets the badge primary color | RGB Hex Values, [CSS Color Keywords](https://developer.mozilla.org/en-US/docs/Web/CSS/color_value) | "fff", "1BACBF", "mediumturquoise" |
| icon | Sets the badge icon | Any one of the available [Font Awesome Icons](https://fontawesome.com/icons): `/<NAME>` | "brands/github", "regular/star", "solid/star" |
| status | Sets the badge status text | Any URL-encoded string | "Build%20Status", "ビルド状態" |
| style | Sets the badge style | Any one of the 4 available badge styles (classic, flat, plastic, semaphoreci) | "classic", "flat", "plastic", "semaphoreci" |
| subject | Sets the badge subject text | Any URL-encoded string | "Failed", "失敗" |### Static Badge Service
| Path | Description | Example |
| -------------------------------- | ---------------------- | ----------------------------------------------------------------------------------------------------------------- |
| [/static?subject=release&status=v2.0.0](https://aegisbadges.appspot.com/static?subject=release&status=v2.0.0) | Static badge | ![static](https://aegisbadges.appspot.com/static?subject=release&status=v2.0.0) |
| [/static?subject=style&status=classic&style=classic](https://aegisbadges.appspot.com/static?subject=style&status=classic&style=classic)<br>[/static?subject=style&status=flat&style=flat](https://aegisbadges.appspot.com/static?subject=style&status=flat&style=flat)<br>[/static?subject=style&status=plastic&style=plastic](https://aegisbadges.appspot.com/static?subject=style&status=plastic&style=plastic)<br>[/static?subject=style&status=semaphoreci&style=semaphoreci](https://aegisbadges.appspot.com/static?subject=style&status=semaphoreci&style=semaphoreci) | With various badge styles | ![static](https://aegisbadges.appspot.com/static?subject=style&status=classic&style=classic)<br>![static](https://aegisbadges.appspot.com/static?subject=style&status=flat&style=flat)<br>![static](https://aegisbadges.appspot.com/static?subject=style&status=plastic&style=plastic)<br>![static](https://aegisbadges.appspot.com/static?subject=style&status=semaphoreci&style=semaphoreci) |
| [/static?subject=license&status=AGPL%20v3&icon=solid/balance-scale](https://aegisbadges.appspot.com/static?subject=license&status=AGPL%20v3&icon=solid/balance-scale) | With icon | ![static](https://aegisbadges.appspot.com/static?subject=license&status=AGPL%20v3&icon=solid/balance-scale) |
| [/static?subject=ビルド状態&status=成功&color=26A876](https://aegisbadges.appspot.com/static?subject=ビルド状態&status=成功&color=26A876) | With non-english characters | ![static](https://aegisbadges.appspot.com/static?subject=ビルド状態&status=成功&color=26A876) |### Bitbucket Badge Service
[![Bitbucket Cloud REST API](https://aegisbadges.appspot.com/static?icon=brands/bitbucket&subject=Bitbucket%20Cloud%20REST%20API&status=v2.0)](https://developer.atlassian.com/bitbucket/api/2/reference/)
| Path | Description | Example |
| ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| /bitbucket/forks/`<USERNAME>`/`<REPO_SLUG>` | Fork count | ![bitbucket/forks](https://aegisbadges.appspot.com/bitbucket/forks/atlassian/aui-react?) |
| /bitbucket/issues/`<USERNAME>`/`<REPO_SLUG>`<br>/bitbucket/issues/`<USERNAME>`/`<REPO_SLUG>`?state=new<br>/bitbucket/issues/`<USERNAME>`/`<REPO_SLUG>`?state=open<br>/bitbucket/issues/`<USERNAME>`/`<REPO_SLUG>`?state=resolved<br>/bitbucket/issues/`<USERNAME>`/`<REPO_SLUG>`?state=on-hold<br>/bitbucket/issues/`<USERNAME>`/`<REPO_SLUG>`?state=invalid<br>/bitbucket/issues/`<USERNAME>`/`<REPO_SLUG>`?state=duplicate<br>/bitbucket/issues/`<USERNAME>`/`<REPO_SLUG>`?state=wontfix<br>/bitbucket/issues/`<USERNAME>`/`<REPO_SLUG>`?state=closed<br> | Issue count | ![bitbucket/issues](https://aegisbadges.appspot.com/bitbucket/issues/atlassian/aui-react)<br>![bitbucket/new-issues](https://aegisbadges.appspot.com/bitbucket/issues/atlassian/aui-react?state=new)<br>![bitbucket/open-issues](https://aegisbadges.appspot.com/bitbucket/issues/atlassian/aui-react?state=open)<br>![bitbucket/resolved-issues](https://aegisbadges.appspot.com/bitbucket/issues/atlassian/aui-react?state=resolved)<br>![bitbucket/on-hold-issues](https://aegisbadges.appspot.com/bitbucket/issues/atlassian/aui-react?state=on-hold)<br>![bitbucket/invalid-issues](https://aegisbadges.appspot.com/bitbucket/issues/atlassian/aui-react?state=invalid)<br>![bitbucket/duplicate-issues](https://aegisbadges.appspot.com/bitbucket/issues/atlassian/aui-react?state=duplicate)<br>![bitbucket/wontfix-issues](https://aegisbadges.appspot.com/bitbucket/issues/atlassian/aui-react?state=wontfix)<br>![bitbucket/closed-issues](https://aegisbadges.appspot.com/bitbucket/issues/atlassian/aui-react?state=closed)<br> |
| /bitbucket/pull-requests/`<USERNAME>`/`<REPO_SLUG>`<br>/bitbucket/pull-requests/`<USERNAME>`/`<REPO_SLUG>`?state=open<br>/bitbucket/pull-requests/`<USERNAME>`/`<REPO_SLUG>`?state=declined<br>/bitbucket/pull-requests/`<USERNAME>`/`<REPO_SLUG>`?state=merged<br>/bitbucket/pull-requests/`<USERNAME>`/`<REPO_SLUG>`?state=superseded<br> | Pull Request count | ![bitbucket/pull-requests](https://aegisbadges.appspot.com/bitbucket/pull-requests/atlassian/aui-react)<br>![bitbucket/open-pull-requests](https://aegisbadges.appspot.com/bitbucket/pull-requests/atlassian/aui-react?state=open)<br>![bitbucket/declined-pull-requests](https://aegisbadges.appspot.com/bitbucket/pull-requests/atlassian/aui-react?state=declined)<br>![bitbucket/merged-pull-requests](https://aegisbadges.appspot.com/bitbucket/pull-requests/atlassian/aui-react?state=merged)<br>![bitbucket/superseded-pull-requests](https://aegisbadges.appspot.com/bitbucket/pull-requests/atlassian/aui-react?state=superseded) |### GitHub Badge Service
[![GitHub GraphQL API](https://aegisbadges.appspot.com/static?icon=brands/github&subject=GitHub%20GraphQL%20API&status=v4)](https://developer.github.com/v4/)
| Path | Description | Example |
| --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| /github/forks/`<OWNER>`/`<REPOSITORY>` | Fork count | ![github/forks](https://aegisbadges.appspot.com/github/forks/google/gopacket) |
| /github/issues/`<OWNER>`/`<REPOSITORY>`<br>/github/issues/`<OWNER>`/`<REPOSITORY>`?state=open<br>/github/issues/`<OWNER>`/`<REPOSITORY>`?state=closed<br> | Issue count | ![github/issues](https://aegisbadges.appspot.com/github/issues/google/gopacket)<br>![github/open-issues](https://aegisbadges.appspot.com/github/issues/google/gopacket?state=open)<br>![github/closed-issues](https://aegisbadges.appspot.com/github/issues/google/gopacket?state=closed) |
| /github/pull-requests/`<OWNER>`/`<REPOSITORY>`<br>/github/pull-requests/`<OWNER>`/`<REPOSITORY>`?state=open<br>/github/pull-requests/`<OWNER>`/`<REPOSITORY>`?state=closed<br>/github/pull-requests/`<OWNER>`/`<REPOSITORY>`?state=merged<br> | Pull Request count | ![github/pull-requests](https://aegisbadges.appspot.com/github/pull-requests/google/gopacket)<br>![github/open-pull-requests](https://aegisbadges.appspot.com/github/pull-requests/google/gopacket?state=open)<br>![github/closed-pull-requests](https://aegisbadges.appspot.com/github/pull-requests/google/gopacket?state=closed)<br>![github/merged-pull-requests](https://aegisbadges.appspot.com/github/pull-requests/google/gopacket?state=merged) |
| /github/stars/`<OWNER>`/`<REPOSITORY>` | Star count | ![github/stars](https://aegisbadges.appspot.com/github/stars/google/gopacket) |### GitLab Badge Service
[![GitLab API](https://aegisbadges.appspot.com/static?icon=brands/gitlab&subject=GitLab%20API&status=v4)](https://docs.gitlab.com/ee/api/)
| Path | Description | Example |
| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| /gitlab/forks/`<NAMESPACE>`/`<PROJECT_NAME>` | Fork count | ![gitlab/forks](https://aegisbadges.appspot.com/gitlab/forks/gitlab-org/gitaly) |
| /gitlab/issues/`<NAMESPACE>`/`<PROJECT_NAME>`<br>/gitlab/issues/`<NAMESPACE>`/`<PROJECT_NAME>`?state=opened<br>/gitlab/issues/`<NAMESPACE>`/`<PROJECT_NAME>`?state=closed<br> | Issue count | ![gitlab/issues](https://aegisbadges.appspot.com/gitlab/issues/gitlab-org/gitaly)<br>![gitlab/opened-issues](https://aegisbadges.appspot.com/gitlab/issues/gitlab-org/gitaly?state=opened)<br>![gitlab/closed-issues](https://aegisbadges.appspot.com/gitlab/issues/gitlab-org/gitaly?state=closed)<br> |
| /gitlab/merge-requests/`<NAMESPACE>`/`<PROJECT_NAME>`<br>/gitlab/merge-requests/`<NAMESPACE>`/`<PROJECT_NAME>`?state=opened<br>/gitlab/merge-requests/`<NAMESPACE>`/`<PROJECT_NAME>`?state=closed<br>/gitlab/merge-requests/`<NAMESPACE>`/`<PROJECT_NAME>`?state=locked<br>/gitlab/merge-requests/`<NAMESPACE>`/`<PROJECT_NAME>`?state=merged<br> | Merge Request count | ![gitlab/merge-requests](https://aegisbadges.appspot.com/gitlab/merge-requests/gitlab-org/gitaly)<br>![gitlab/opened-merge-requests](https://aegisbadges.appspot.com/gitlab/merge-requests/gitlab-org/gitaly?state=opened)<br>![gitlab/closed-merge-requests](https://aegisbadges.appspot.com/gitlab/merge-requests/gitlab-org/gitaly?state=closed)<br>![gitlab/locked-merge-requests](https://aegisbadges.appspot.com/gitlab/merge-requests/gitlab-org/gitaly?state=locked)<br>![gitlab/merged-merge-requests](https://aegisbadges.appspot.com/gitlab/merge-requests/gitlab-org/gitaly?state=merged)<br> |
| /gitlab/stars/`<NAMESPACE>`/`<PROJECT_NAME>`<br> | Star count | ![gitlab/stars](https://aegisbadges.appspot.com/gitlab/stars/gitlab-org/gitaly)<br> |## Getting Started
This project includes a [Makefile](Makefile) for testing and building the project. To see all available options:
```
❯ make help
all Runs a clean, build, fmt, lint, test, staticcheck, vet and install
build Builds a dynamic executable or package
bump-version Bump the version in the version file. Set BUMP to [ patch | major | minor ]
clean Cleanup any build binaries or packages
cover Runs go test with coverage
cross Builds the cross-compiled binaries, creating a clean directory structure (eg. GOOS/GOARCH/binary)
fmt Verifies all files have been `gofmt`ed
install Installs the executable or package
lint Verifies `golint` passes
release Builds the cross-compiled binaries, naming them in such a way for release (eg. binary-GOOS-GOARCH)
static Builds a static executable
staticcheck Verifies `staticcheck` passes
tag Create a new git tag to prepare to build a release
test Runs the go tests
vet Verifies `go vet` passes
```To run the Aegis server locally, make sure to run `make all` or `make build` to build the binary & execute it:
```shell
❯ ./aegis --github-access-token $GITHUB_ACCESS_TOKEN
{"level":"info","ts":1580194366.3114529,"caller":"service/service.go:71","msg":"Starting Aegis badge generation service...","Version":"1.0.0","GitHash":"7591664-dirty","NumCPU":4}
{"level":"info","ts":1580194366.3115368,"caller":"service/service.go:77","msg":"Initializing services..."}
{"level":"info","ts":1580194366.3117702,"caller":"service/service.go:115","msg":"HTTP server listening...","Port":8080}
```## License
Aegis is [MIT licensed](./LICENSE).
[![FOSSA Status](https://app.fossa.com/api/projects/git%2Bgithub.com%2Ftohjustin%2Faegis.svg?type=large)](https://app.fossa.com/projects/git%2Bgithub.com%2Ftohjustin%2Faegis?ref=badge_large)