A command line client built with Go that interfaces MyAnimeList API for viewing top anime, anime details, updating user's anime lists and more
- MyAnimeList Account is required to obtain
ClientId
andClientSecret
.
To get started, you'll need a 'Client ID' and 'Client Secret' from MyAnimeList's API Dashboard:
-
🔗 Navigate to: MyAnimeList API Dashboard
-
🚪 Sign in or create a MyAnimeList account.
-
➕ Click on 'Create ID'
-
📜 Fill in the app details like example below.
-
🌐 In the App Redirect URL field of the app you created, please enter the following URLs:
- 📎
http://localhost:9999/oauth/callback
- 📎
-
🛍 Once the App is created, you'll find the 'Client ID' and 'Client Secret' on the app details page.
-
🔑 Input client id and client secret during login:
- Perform login using the command
ani-track login
orgo run main.go login
if testing. You will be asked for the client id and client secret you just created so input that and then you can perform oauth login with MAL - Your access token will be saved in the home directory and will be used for further api requests
- Perform login using the command
🚫 Remember: Keep your 'Client Secret and Client Id' confidential. Never share it! They can be used to control your MyAnimeList data.
- Setup oauth with MyAnimeList API
- Add methods for calling different API endpoints of MAL
- Integrate Cobra and add CLI commands to use different methods
- Add logic to use refresh token when access token is expired in any api request
- Add edit and update API calls
- Improve UI of the CLI results
- Install Go version 1.21 or above https://go.dev/
- Clone repo
- Run
go mod tidy
- Follow
Configuration
steps mentioned above - Now oauth with MyAnimeList can be executed from root directory e.g.
go run main.go
Your contributions are welcome! 🌟 Feel free to submit pull requests or raise issues.
This project is under the MIT License. Dive into the LICENSE
file for more.