A .NET-based Web API that allows users to search for lyrics of a song from multiple external providers (like AZLyrics, Genius, SongLyrics, etc.). It supports both artist/song and direct URL-based search requests.
Feel free to send me feedback on Telegram or file an issue. Feature requests are always welcome.
Project is created with:
.NET: 8.0
Microsoft Visual Studio Community 2022
docker
- LyricsScraperNET - 🎼 A a versatile .NET library that provides an API for searching song lyrics from the web.
- Serilog - Simple .NET logging with fully-structured events
- Shouldly - An assertion framework which focuses on giving great error messages when the assertion fails while being simple and terse.
- FakeItEasy - A .Net dynamic fake framework for creating all types of fake objects, mocks, stubs etc.
- FluentValidation - A validation library for .NET that uses a fluent interface to construct strongly-typed validation rules.
- Swashbuckle.AspNetCore - Swagger tools for documenting APIs built on ASP.NET Core
- xUnit - A free, open source, community-focused unit testing tool for the .NET Framework.
Visit issue board.
You can pull the Docker image for this project from Docker Hub.
First, pull the pre-built Docker image from Docker Hub
docker pull skuill/lyrics-scraper-api
Once the image is pulled, run the container using the following command (using HTTP for example):
docker run -d -p 8180:8180 -p 8181:8181 -e ASPNETCORE_HTTP_PORTS=8180 --name lyrics-scraper-api skuill/lyrics-scraper-api
Once the container is running, your API will be available at the following addresses:
http://localhost:8180 (or https://localhost:8181 if environment ASPNETCORE_HTTPS_PORTS is set)
The healthcheck is configured here:
http://localhost:8180/api/health
The Postman environment and collection available in folder postman