Go to file
2022-04-25 14:48:54 +12:00
cmd/goscrobble 0.2.0 - Mid migration 2022-04-25 14:48:54 +12:00
data/img 0.1.2 Update API + Docker composer 2022-01-06 10:20:30 +13:00
docs 0.2.0 - Mid migration 2022-04-25 14:48:54 +12:00
init 0.1.3 Add date ranges 2022-01-06 15:11:26 +13:00
internal/goscrobble 0.1.8 2022-02-26 12:17:34 +13:00
migrations 0.1.2 Update API + Docker composer 2022-01-06 10:20:30 +13:00
web 0.2.0 - Mid migration 2022-04-25 14:48:54 +12:00
.env.development 0.2.0 - Mid migration 2022-04-25 14:48:54 +12:00
.env.example 0.1.0 Split repos, Add API docs, new env vars 2021-12-25 15:40:20 +13:00
.gitignore 0.1.2 Update API + Docker composer 2022-01-06 10:20:30 +13:00
.gitlab-ci.yml 0.1.8 2022-02-26 12:17:34 +13:00
docker-compose.yml 0.2.0 - Mid migration 2022-04-25 14:48:54 +12:00
go.mod 0.2.0 - Mid migration 2022-04-25 14:48:54 +12:00
go.sum 0.2.0 - Mid migration 2022-04-25 14:48:54 +12:00
LICENSE Initial commit 2021-03-23 19:07:39 +13:00
README.md 0.2.0 - Mid migration 2022-04-25 14:48:54 +12:00

go-scrobble

Golang based music scrobbler.

Stack: Go 1.18+, Node 15+, React 17+, MySQL 8.0+, Redis

More documentation

Changelog

Environment Variables

Setup MySQL

create user 'goscrobble'@'%' identified by 'supersecurepass';
create database goscrobble;
grant all privileges on goscrobble.* to 'goscrobble'@'%';

Local Development

cp .env.example .env # Fill in the blanks
go mod tidy
CGO_ENABLED=0 go run cmd/go-scrobble/*.go

Access API @ http://127.0.0.1:42069/api/v1

Prod deployment

cp .env.example .env # Fill in the blanks
go build -o goscrobble cmd/go-scrobble/*.go
./goscrobble

Build API Docs

cd docs/api && docker run --rm --name slate -v $(pwd)/build:/srv/slate/build -v $(pwd)/source:/srv/slate/source slatedocs/slate build

Test API Docs

cd docs/api && docker run --rm --name slate -p 4567:4567 -v $(pwd)/source:/srv/slate/source slatedocs/slate serve

Support Development!

Feel free to support hosting and my coffee addiction https://liberapay.com/idanoo