{"id":15517315,"url":"https://github.com/skx/mpd-web","last_synced_at":"2025-04-23T04:14:54.937Z","repository":{"id":46032254,"uuid":"429541153","full_name":"skx/mpd-web","owner":"skx","description":"Simple HTTP view of an MPD server","archived":false,"fork":false,"pushed_at":"2024-10-25T03:39:22.000Z","size":24,"stargazers_count":6,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-04-23T04:14:49.326Z","etag":null,"topics":["go","golang","http-server","mpd","mpd-client"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/skx.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null},"funding":{"github":"skx","custom":"https://steve.fi/donate/"}},"created_at":"2021-11-18T18:41:51.000Z","updated_at":"2024-10-25T03:39:26.000Z","dependencies_parsed_at":"2024-06-19T20:05:40.703Z","dependency_job_id":"373a2057-744a-4283-b280-d333f82f9b63","html_url":"https://github.com/skx/mpd-web","commit_stats":null,"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/skx%2Fmpd-web","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/skx%2Fmpd-web/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/skx%2Fmpd-web/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/skx%2Fmpd-web/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/skx","download_url":"https://codeload.github.com/skx/mpd-web/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":250366716,"owners_count":21418772,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["go","golang","http-server","mpd","mpd-client"],"created_at":"2024-10-02T10:12:29.162Z","updated_at":"2025-04-23T04:14:54.921Z","avatar_url":"https://github.com/skx.png","language":"Go","funding_links":["https://github.com/sponsors/skx","https://steve.fi/donate/"],"categories":[],"sub_categories":[],"readme":"# mpd-web\n\nThis repository contains a simple HTTP-server which allows *basic* control of an [mpd](https://www.musicpd.org/) server running upon localhost:\n\n* Move to the next track.\n* Move to the previous track.\n* Stop playback, and restart it.\n* Show the current playlist, and allow jumping to specific songs within it.\n\n\n## Rational\n\nI have `mpd` installed upon my desktop, and I use it for playing music when I'm in front of my PC.\n\nWhen I'm outside the office I often have playback sent through some bluetooth speakers - and I don't want to have to go back to my PC to skip to the next track.\n\n\u003e I can stop playback by turning off the speaker, of course!\n\nSo I make sure that I launch this deamon too, and then I can skip tracks with my mobile phone.\n\n\n\n## Installation\n\nAssuming you have a working go compiler, \u0026 etc, you can install via:\n\n    $ go install github.com/skx/mpd-web@latest\n\nOtherwise clone [this repository](https://github.com/skx/mpd-web) and build/install like so:\n\n    $ cd mpd-web\n    $ go build .\n    $ go install .\n\nYou can see a simple installation-recipe, which launches this as a user-service via systemd in [install](install) - You should read the contents before blindly executing it!\n\n**NOTE**: The embedded [HTML template](web/index.html) we use for our UI requires the use of go version 1.17, or higher, to build this service.\n\n\n\n## Configuration\n\nThere are zero configuration options; the server defaults to serving on port 8888 (all interfaces), and contacting the `mpd` server on `localhost:6600`.\n\n\n\n## Implementation\n\n* [main.go](main.go) configures some HTTP-routes, and starts the HTTP-server\n  * No command-line parsing/handling.\n* [http.go](http.go) contains the HTTP-handlers.\n  * These trigger actions against the MPD server\n* [embed.go](embed.go) is a helper which embeds the `text/template` file served.\n  * No real code here.\n* [web/index.html](web/index.html) is the HTML-template served when the user visits http://127.0.0.1:8888/\n\n\n## Bugs?\n\nReport as you see them :)\n\n\n\nSteve\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fskx%2Fmpd-web","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fskx%2Fmpd-web","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fskx%2Fmpd-web/lists"}