🎧☁️ Modern Music Server and Streamer compatible with Subsonic/Airsonic
Go to file
Deluan 2bb4c74ba6 Started implementing getIndex, now with TDD (brought to you by DI)! 2016-03-01 12:36:15 -05:00
api Started implementing getIndex, now with TDD (brought to you by DI)! 2016-03-01 12:36:15 -05:00
conf Started implementing getIndex, now with TDD (brought to you by DI)! 2016-03-01 12:36:15 -05:00
controllers Moved router to conf package 2016-03-01 09:23:40 -05:00
models Some refactoring 2016-02-29 13:56:09 -05:00
repositories Started implementing getIndex, now with TDD (brought to you by DI)! 2016-03-01 12:36:15 -05:00
scanner Some refactoring 2016-02-29 13:56:09 -05:00
tests Retrofitting with tests 2016-02-29 10:04:30 -05:00
utils Started implementing getIndex, now with TDD (brought to you by DI)! 2016-03-01 12:36:15 -05:00
.gitignore Retrofitting with tests 2016-02-29 10:04:30 -05:00
.gopmfile Fixed AlbumId generation. Some code cleanup 2016-03-01 09:17:28 -05:00
.travis.yml Don't break on ledis download 2016-02-29 22:51:30 -05:00
LICENSE Adding Apache 2.0 license 2016-02-25 16:28:03 -05:00
README.md README 2016-02-29 14:16:51 -05:00
main.go Moved router to conf package 2016-03-01 09:23:40 -05:00

README.md

GoSonic

Build Status

About

This is still a work in progress, and has no releases available

GoSonic is an application that implements the Subsonic API, but instead of having its own music library like the original Subsonic application, it interacts directly with your iTunes library.

The project's main goals are:

  • Full compatibility with the available Subsonic clients (only being tested with DSub and Jamstash)
  • Use all metadata from iTunes, so that you can keep using iTunes to manage your music
  • Keep iTunes stats (play counts, last played dates, ratings, etc..) updated, at least on Mac OS X
  • Learning Go ;) Gopher

Supported Subsonic API version:

Version Notes
1.0.0 In Progress

Development Environment

You will need to install Go 1.6

Then install dependencies:

$ go get github.com/beego/bee   
$ go get github.com/gpmgo/gopm
$ gopm get -v -g

From here it's a normal BeeGo development cycle. Some useful commands:

# Start local server (with hot reload)
$ bee run

# Start test runner on the browser
$ NOLOG=1 goconvey --port 9090

# Run all tests
$ go test ./... -v

Frameworks/Projects

REST/Web

DB

Testing