https://github.com/brittonhayes/roll
A simple Go package and CLI for dice rolling 🎲
https://github.com/brittonhayes/roll
cli docker dungeons-and-dragons go rpg
Last synced: 2 months ago
JSON representation
A simple Go package and CLI for dice rolling 🎲
- Host: GitHub
- URL: https://github.com/brittonhayes/roll
- Owner: brittonhayes
- License: mit
- Created: 2022-05-12T01:15:54.000Z (about 3 years ago)
- Default Branch: main
- Last Pushed: 2023-12-18T23:02:03.000Z (over 1 year ago)
- Last Synced: 2025-03-31T12:58:09.799Z (4 months ago)
- Topics: cli, docker, dungeons-and-dragons, go, rpg
- Language: Go
- Homepage:
- Size: 643 KB
- Stars: 10
- Watchers: 2
- Forks: 1
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# 🎲 Roll
[](https://pkg.go.dev/github.com/brittonhayes/roll)

[](https://github.com/brittonhayes/roll/actions/workflows/lint.yml)
[](https://github.com/brittonhayes/roll/actions/workflows/test.yml)
[](https://goreportcard.com/report/github.com/brittonhayes/roll)A simple Go package and CLI for dice rolling.
## âš¡ Usage
How to use Roll as a CLI or a library
### CLI
Installation via Go or Docker
```bash
# Go
go install github.com/brittonhayes/roll/cmd/roll
``````bash
# Docker
docker run --rm -it ghcr.io/brittonhayes/roll:latest 1d6+2
```Using the command line tool
```bash
# Run the CLI
Usage: rollA simple CLI for dice rolling
Arguments:
Dice to roll +/- modifiers e.g. 'roll 1d6', 'roll 2d12+20', or 'roll 1d20-5'Flags:
-h, --help Show context-sensitive help.
-v, --verbose Display verbose log output ($VERBOSE)
-s, --skip-spinner Skip loading spinner ($SKIP_SPINNER)# Roll a D6
roll 1d6# Roll with modifiers
roll 1d6+2
```## 📺 Preview

### Package
Using the package
```go
func main() {
// Create a new d6
d := roll.NewD6()// Roll the die
fmt.Println("Rolling", d)
result := d.Roll()// Print the result
fmt.Println(result)
}
```