MLocker | A personal cloud hosted music locker service
kandi X-RAY | MLocker Summary
kandi X-RAY | MLocker Summary
MLocker is a C# library typically used in Telecommunications, Media, Media, Entertainment applications. MLocker has no bugs, it has no vulnerabilities, it has a Permissive License and it has low support. You can download it from GitHub.
This project takes an experimental shot at building a personal music locker. All the services are shifting to subscriber models that don't care about the library that you've purchased and built. Those services don't have all the music you do, and when it's "free" there are ads. Amazon shutdown their locker service a few years ago, and now Google has forced YouTube Music on to us, and it's a trainwreck. So what does one do? Builds their own service, of course. The app uses an aspnetcore API, storing the music files in Azure Storage and the metadata and playlists in SQL. (I was going to use something else, but I have a wholly underutilized SQL pool. I was going to use Azure Functions for the API, but I have a wholly underutilized app service, too.) The front-end is a Blazor client, but I'm confident that I can probably whip up a phone client or two.
This project takes an experimental shot at building a personal music locker. All the services are shifting to subscriber models that don't care about the library that you've purchased and built. Those services don't have all the music you do, and when it's "free" there are ads. Amazon shutdown their locker service a few years ago, and now Google has forced YouTube Music on to us, and it's a trainwreck. So what does one do? Builds their own service, of course. The app uses an aspnetcore API, storing the music files in Azure Storage and the metadata and playlists in SQL. (I was going to use something else, but I have a wholly underutilized SQL pool. I was going to use Azure Functions for the API, but I have a wholly underutilized app service, too.) The front-end is a Blazor client, but I'm confident that I can probably whip up a phone client or two.
Support
Quality
Security
License
Reuse
Support
MLocker has a low active ecosystem.
It has 6 star(s) with 0 fork(s). There are 1 watchers for this library.
It had no major release in the last 6 months.
There are 3 open issues and 3 have been closed. On average issues are closed in 15 days. There are no pull requests.
It has a neutral sentiment in the developer community.
The latest version of MLocker is current.
Quality
MLocker has 0 bugs and 0 code smells.
Security
MLocker has no vulnerabilities reported, and its dependent libraries have no vulnerabilities reported.
MLocker code analysis shows 0 unresolved vulnerabilities.
There are 0 security hotspots that need review.
License
MLocker is licensed under the MIT License. This license is Permissive.
Permissive licenses have the least restrictions, and you can use them in most projects.
Reuse
MLocker releases are not available. You will need to build from source code and install.
Installation instructions are available. Examples and code snippets are not available.
It has 389 lines of code, 0 functions and 47 files.
It has low code complexity. Code complexity directly impacts maintainability of the code.
Top functions reviewed by kandi - BETA
kandi's functional review helps you automatically verify the functionalities of the libraries and avoid rework.
Currently covering the most popular Java, JavaScript and Python libraries. See a Sample of MLocker
Currently covering the most popular Java, JavaScript and Python libraries. See a Sample of MLocker
MLocker Key Features
No Key Features are available at this moment for MLocker.
MLocker Examples and Code Snippets
No Code Snippets are available at this moment for MLocker.
Community Discussions
Trending Discussions on MLocker
QUESTION
How to pass only mutex to lock_guard constructor parameter
Asked 2021-Nov-15 at 07:32
When declare locker like,
...ANSWER
Answered 2021-Nov-15 at 03:42First, Your concept of is_mutex
is incorrectly defined. It will only check the validity of is_same_v
in the requires clause without evaluating it. You need to define it as:
Community Discussions, Code Snippets contain sources that include Stack Exchange Network
Vulnerabilities
No vulnerabilities reported
Install MLocker
First off, I'm not a lawyer, and this isn't legal advice, but existing case law seems to suggest that you can store your own music that you own in the cloud, so this shouldn't be materially different than doing so with Amazon or Google. That said, don't share it and give your API key to everyone. Also, there is no defensive coding against concurrency issues, so your playlists will get written over by another user if you're editing them at the same time.
I've got the API and the Blazor web app serving out of the same site. You could separate these if you like, but it's just for you, so I'm not sure what you would gain.
appsettings.json has three settings in the API project, and you should override these at the infrastructure level (i.e., an Azure App Service): ConnectionString: the SQL database that stores the song metadata and playlists. StorageConnectionString: the connection string to your Azure storage. You get this from the Azure portal. Use UseDevelopmentStorage=true for the local emulator. ApiKey: A string that the client needs to connect.
Your storage account needs a container called music, and the app won't create this for you.
Change the startup properties of the MLocker.Database project to point to a database with a connection string, then run it. Remember this is a command line, so if your connection string has spaces, surround it in quotes. The default in source is looking for a database called MLocker on localhost. This uses dbup to keep the schema updated.
I've got the API and the Blazor web app serving out of the same site. You could separate these if you like, but it's just for you, so I'm not sure what you would gain.
appsettings.json has three settings in the API project, and you should override these at the infrastructure level (i.e., an Azure App Service): ConnectionString: the SQL database that stores the song metadata and playlists. StorageConnectionString: the connection string to your Azure storage. You get this from the Azure portal. Use UseDevelopmentStorage=true for the local emulator. ApiKey: A string that the client needs to connect.
Your storage account needs a container called music, and the app won't create this for you.
Change the startup properties of the MLocker.Database project to point to a database with a connection string, then run it. Remember this is a command line, so if your connection string has spaces, surround it in quotes. The default in source is looking for a database called MLocker on localhost. This uses dbup to keep the schema updated.
Support
For any new features, suggestions and bugs create an issue on GitHub.
If you have any questions check and ask questions on community page Stack Overflow .
Find more information at:
Reuse Trending Solutions
Find, review, and download reusable Libraries, Code Snippets, Cloud APIs from over 650 million Knowledge Items
Find more librariesStay Updated
Subscribe to our newsletter for trending solutions and developer bootcamps
Share this Page