Skip to content

Commit

Permalink
update README.md
Browse files Browse the repository at this point in the history
  • Loading branch information
hoangtran080204 committed Sep 25, 2024
1 parent 902b6e6 commit 9d300dc
Show file tree
Hide file tree
Showing 2 changed files with 61 additions and 23 deletions.
34 changes: 17 additions & 17 deletions PROGRESS.md
Original file line number Diff line number Diff line change
@@ -1,12 +1,13 @@
# Api Progress ![Progress](http://progressed.io/bar/79)
# API Progress ![Progress](http://progressed.io/bar/79)

These are all the Last.fm API methods currently available.
These are all the Last.fm API methods currently available.

- Methods implemented by the [Inflatable Last.fm .NET SDK](https://github.com/inflatablefriends/lastfm) link to the relevant documentation page.
- Methods ~~marked with strikethrough~~ aren't currently implemented. Pull requests are welcome!
- Methods _marked with an asterisk *_ aren't listed on [the Last.fm documentation](http://www.last.fm/api), so they might not work!
- Methods _marked with an asterisk \*_ aren't listed on [the Last.fm documentation](http://www.last.fm/api), so they might not work!

This list is generated by the [ProgressReport](src/IF.Lastfm.ProgressReport) tool in the solution. Last updated on Wednesday, 30 November 2016 04:27

## Album

- [album.getInfo](http://www.last.fm/api/show/album.getInfo)
Expand All @@ -15,8 +16,8 @@ This list is generated by the [ProgressReport](src/IF.Lastfm.ProgressReport) too
- [album.search](http://www.last.fm/api/show/album.search)
- ~~[album.addTags](http://www.last.fm/api/show/album.addTags)~~
- ~~[album.removeTag](http://www.last.fm/api/show/album.removeTag)~~
- _album.shout_ *
- _album.getShouts_ *
- _album.shout_ \*
- _album.getShouts_ \*

## Artist

Expand All @@ -30,8 +31,8 @@ This list is generated by the [ProgressReport](src/IF.Lastfm.ProgressReport) too
- ~~[artist.addTags](http://www.last.fm/api/show/artist.addTags)~~
- ~~[artist.getCorrection](http://www.last.fm/api/show/artist.getCorrection)~~
- ~~[artist.removeTag](http://www.last.fm/api/show/artist.removeTag)~~
- _artist.shout_ *
- _artist.getShouts_ *
- _artist.shout_ \*
- _artist.getShouts_ \*

## Auth

Expand All @@ -53,9 +54,9 @@ This list is generated by the [ProgressReport](src/IF.Lastfm.ProgressReport) too
## Library

- [library.getArtists](http://www.last.fm/api/show/library.getArtists)
- _library.getTracks_ *
- _library.removeScrobble_ *
- _library.removeTrack_ *
- _library.getTracks_ \*
- _library.removeScrobble_ \*
- _library.removeTrack_ \*

## Tag

Expand All @@ -81,8 +82,8 @@ This list is generated by the [ProgressReport](src/IF.Lastfm.ProgressReport) too
- ~~[track.getTags](http://www.last.fm/api/show/track.getTags)~~
- ~~[track.getTopTags](http://www.last.fm/api/show/track.getTopTags)~~
- ~~[track.removeTag](http://www.last.fm/api/show/track.removeTag)~~
- _track.shout_ *
- _track.getShouts_ *
- _track.shout_ \*
- _track.getShouts_ \*

## User

Expand All @@ -100,8 +101,7 @@ This list is generated by the [ProgressReport](src/IF.Lastfm.ProgressReport) too
- ~~[user.getWeeklyArtistChart](http://www.last.fm/api/show/user.getWeeklyArtistChart)~~
- ~~[user.getWeeklyChartList](http://www.last.fm/api/show/user.getWeeklyChartList)~~
- ~~[user.getWeeklyTrackChart](http://www.last.fm/api/show/user.getWeeklyTrackChart)~~
- _user.getRecommendedArtists_ *
- _user.shout_ *
- _user.getRecentStations_ *
- _user.getShouts_ *

- _user.getRecommendedArtists_ \*
- _user.shout_ \*
- _user.getRecentStations_ \*
- _user.getShouts_ \*
50 changes: 44 additions & 6 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,20 +14,47 @@ Hi there! The maintainer of this library @rikkit is now mostly a TypeScript + Re
- To build useful components for Last.fm applications
- To be the very best, like no-one ever was

## Description

The Inflatable Last.fm .NET SDK is a comprehensive library that provides .NET bindings for the Last.fm REST API. This SDK aims to simplify the process of integrating Last.fm functionality into .NET applications, allowing developers to easily access and manipulate Last.fm data.

## Features

Key features of this SDK include:

- **Complete API Coverage**: Provides bindings for all Last.fm API methods, allowing full access to Last.fm's extensive music data and user information.
- **Asynchronous Operations**: Utilizes `async/await` patterns for efficient and non-blocking API calls.
- **Strong Typing**: Offers strongly-typed objects for Last.fm entities like artists, albums, and tracks, enhancing code reliability and developer productivity.
- **Authentication Support**: Implements Last.fm's authentication protocols, enabling both authenticated and non-authenticated API requests.
- **Scrobbling Capabilities**: Includes methods for scrobbling tracks to Last.fm, a core feature of the Last.fm service.
- **Extensible Architecture**: Designed with extensibility in mind, allowing for easy updates as the Last.fm API evolves.
- **Cross-Platform Compatibility**: Targets `.NET Standard 1.1`, ensuring broad compatibility across various .NET platforms.

## Contributing

Input is always welcome! [Raise an issue on GitHub](https://github.com/inflatablefriends/lastfm/issues), or send a message to [the Gitter chatroom](https://gitter.im/inflatablefriends/lastfm) if you need help with the library.
Input is always welcome! [Raise an issue on GitHub](https://github.com/inflatablefriends/lastfm/issues), or send a message to [the Gitter chatroom](https://gitter.im/inflatablefriends/lastfm) if you need help with the library.

If you're interested in contributing code or documentation, [this short introduction to the library](doc/contributing.md) will help you get started.

## Quickstart

### Installing

#### NuGet
#### NuGet Package Manager

1. Open your project in Visual Studio.
2. Right-click on your project in the Solution Explorer and select "Manage NuGet Packages".
3. In the "Browse" tab, search for "Inflatable.Lastfm".
4. Click on the package and select "Install".

Alternatively, you can use the Package Manager Console:

Install [Inflatable.Lastfm](
https://www.nuget.org/packages/Inflatable.Lastfm/) from NuGet.
Install [Inflatable.Lastfm](https://www.nuget.org/packages/Inflatable.Lastfm/) from NuGet.

#### .NET CLI

For projects using the .NET CLI, use the following command:
`dotnet add package Inflatable.Lastfm`

#### NuGet - prerelease code

Expand Down Expand Up @@ -80,17 +107,28 @@ if (client.Auth.HasAuthenticated) {
}
```

### Troubleshooting

#### Common Issues:

1. **Authentication Failure:** Ensure that your API key and secret are correctly passed to `LastfmClient`. Also, verify your credentials with Last.fm.
2. **Timeout Errors:** Increase the timeout in your HTTP client settings if you encounter long API response times.
3. **Compatibility Problems:** Check the .NET Standard version compatibility with your project. Review the platform compatibility section for further guidance.
4. **Rate Limiting Issues:** If you encounter frequent `429` errors, you may be exceeding Last.fm's rate limits. Implement appropriate delays between requests.

For more detailed troubleshooting, please refer to the [Last.fm API documentation](https://www.last.fm/api) or open an issue on our [GitHub repository](https://github.com/inflatablefriends/lastfm/issues).

## Documentation

- [Api method progress report](PROGRESS.md)
- [API method progress report](PROGRESS.md)
- [Contributing](doc/contributing.md)
- [Scrobbling](doc/scrobbling.md)
- [Dependency Injection](doc/dependency-injection.md)
- [Example Windows Phone app](https://github.com/inflatablefriends/lastfm-samples)

## Platform Compatibility

The main package targets ```netstandard1.1```. Development is on the ```master``` branch.
The main package targets `netstandard1.1`. Development is on the `master` branch.

### Dependencies

Expand Down

0 comments on commit 9d300dc

Please sign in to comment.