https://github.com/hanami/contributors
All hanami contributors in one place
https://github.com/hanami/contributors
Last synced: 7 months ago
JSON representation
All hanami contributors in one place
- Host: GitHub
- URL: https://github.com/hanami/contributors
- Owner: hanami
- License: mit
- Created: 2017-03-13T23:24:35.000Z (almost 9 years ago)
- Default Branch: main
- Last Pushed: 2023-06-07T00:25:27.000Z (over 2 years ago)
- Last Synced: 2025-06-08T17:02:16.532Z (7 months ago)
- Language: Ruby
- Homepage: http://contributors.hanamirb.org
- Size: 25.5 MB
- Stars: 14
- Watchers: 7
- Forks: 9
- Open Issues: 24
-
Metadata Files:
- Readme: README.md
- License: LICENSE.txt
Awesome Lists containing this project
README
# Hanami Contributors
Display all Hanami contributors on the one page.
## How it works
GitHub Actions daily job that:
1. fetches the contributions data from GitHub and stores it in a local SQLite database (`db/production.db`)
2. rebuilds the website
## JSON API
### `GET /api/contributors`
```
{
"count": Integer,
"data":[{
"github": String,
"avatar_url": String,
"since": "2017-03-08 09:00:56 UTC",
"commits_count": Integer
},
...
]
}
```
### `GET /api/contributors/:github`
```
{
"status": "ok",
"contributor": {
"github": String,
"avatar_url": String,
"since": "2017-03-08 09:00:56 UTC",
"commits": [{
"url": String,
"title": String,
"created_at": "2017-03-08 09:00:56 UTC"
},
...
}
}
```
## Development
### Prerequisites
- Make
- Go 1.18+ (only for `import.go`)
- `musl-cross` (`brew install FiloSottile/musl-cross/musl-cross`)
### Setup
Generate a [new GitHub Token](https://github.com/settings/tokens/new) (no `scope` is required).
```shell
⚡make dev
⚡nvim .envrc # add your GitHub Token
```
### Import
`import.go` imports all the repositories, commits, and commit authors from Hanami GitHub organization and stores them into `db/production.db`
To run the import logic locally:
```shell
⚡make run
```
To build the import logic for GitHub Actions:
```shell
⚡make build
```
## License
Check `LICENSE.txt` file