{"id":21894216,"url":"https://github.com/bernmic/justmusic-javalin","last_synced_at":"2026-04-12T18:49:45.115Z","repository":{"id":38459800,"uuid":"130652617","full_name":"bernmic/justmusic-javalin","owner":"bernmic","description":"Simple REST service for MP3 files written with javalin","archived":false,"fork":false,"pushed_at":"2023-03-02T04:41:51.000Z","size":3525,"stargazers_count":0,"open_issues_count":11,"forks_count":1,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-02-03T04:29:56.654Z","etag":null,"topics":["angular","angular-material","java","java8","javalin","mp3","rest-api","single-page-app","typescript"],"latest_commit_sha":null,"homepage":null,"language":"Java","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/bernmic.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2018-04-23T06:51:51.000Z","updated_at":"2022-01-22T07:39:40.000Z","dependencies_parsed_at":"2023-02-15T08:01:34.751Z","dependency_job_id":null,"html_url":"https://github.com/bernmic/justmusic-javalin","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bernmic%2Fjustmusic-javalin","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bernmic%2Fjustmusic-javalin/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bernmic%2Fjustmusic-javalin/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bernmic%2Fjustmusic-javalin/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/bernmic","download_url":"https://codeload.github.com/bernmic/justmusic-javalin/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244902928,"owners_count":20529115,"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":["angular","angular-material","java","java8","javalin","mp3","rest-api","single-page-app","typescript"],"created_at":"2024-11-28T13:20:16.415Z","updated_at":"2026-04-12T18:49:40.080Z","avatar_url":"https://github.com/bernmic.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# JustMusic\n\nThis project is a simple prototype of an app build with Javalin. It is a REST service which serves collections of MP3 files. It can parse ID3 tags and group songs to albums and artists.\n\nData is stored in maps, here in Hazelcast IMap. So it can run with multiple instances. It can serve cover and the MP3 for players. \n\nFrontend is a Single Page Application build with Angular 6 and Angular Material. Audio is done with Howler.js.\n\n## Build\n\nFrontend need to be built first. This will be done with the parent pom.xml.\n\n### Frontend\nTo build the frontend, Node / NPM is required. After that the Angular-CLI needs to be installed.\n    \n    npm i -g @angular/cli\n\nThen go to the src/main/frondend folder and execute\n\n    npm i\n    ng build --prod\n\nThis will build the frontend to the dist folder.\n\n### REST-Service\nIt needs Maven 3+ to build this app. Run `mvn package` to build the project. The build artifacts will be stored in the `target/` directory. If you build from the root, front and backend are build and packaged together. \n\n## Run\nIt can be staret with\n\n    java -jar target/justmusic-javalin-1.0-SNAPSHOT-jar-with-dependencies.jar\n\nand called from browser with url [http://localhost:7000](http://localhost:7000).\nJustMusic looks in $HOME/.jmj for its configuration. A file called *users.json* is expected there.\n\nExample users.json:\n```json\n[ {\n  \"username\" : \"admin\",\n  \"password\" : \"admin\",\n  \"roles\": \"user,admin\"\n}, {\n  \"username\" : \"user\",\n  \"password\" : \"user\",\n  \"roles\": \"user\"\n} ]\n```","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbernmic%2Fjustmusic-javalin","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbernmic%2Fjustmusic-javalin","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbernmic%2Fjustmusic-javalin/lists"}