https://github.com/junnishimura/chatify
Chat-based music recommendation tool
https://github.com/junnishimura/chatify
ai chatbot chatgpt golang music openai recommendation-system spotify spotify-api
Last synced: about 2 months ago
JSON representation
Chat-based music recommendation tool
- Host: GitHub
- URL: https://github.com/junnishimura/chatify
- Owner: JunNishimura
- License: mit
- Created: 2023-07-09T09:41:20.000Z (almost 3 years ago)
- Default Branch: main
- Last Pushed: 2024-04-15T07:47:13.000Z (about 2 years ago)
- Last Synced: 2024-04-17T17:10:52.750Z (about 2 years ago)
- Topics: ai, chatbot, chatgpt, golang, music, openai, recommendation-system, spotify, spotify-api
- Language: Go
- Homepage:
- Size: 535 KB
- Stars: 1
- Watchers: 1
- Forks: 1
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
β« Chatify β«
chat-based music recommendation tool

# π Overview
Chatify is a TUI(Terminal User Interface) tool that combines the OpenAI API with the Spotify API, allowing an AI bot to recommend the music you are looking for through conversation.
1. You can find the music you are looking for by answering questions.
2. You can listen to the music by selecting the track recommended by chatify.
3. You can store results of recommendations as playlists.
# β οΈ Notice
Unfortunately, Chatify is currently not free to use; you need to have a Spotify Premium account and pay to use the OpenAI API.
# π Prerequisites
Chatify requires two things.
1. You need to have [a Spotify Premium Account](https://www.spotify.com/premium/) to use Spotify API.
2. You need to have [a OpenAI account](https://platform.openai.com/login) to use OpenAI API.
# π» How to use
**It is recommended that the terminal is set to full-screen size when to use Chatify.**
## 1. Install
### Homebrew Tap
```
brew install JunNishimura/tap/Chatify
```
### Go install
```
go install github.com/JunNishimura/Chatify@latest
```
## 2. Preparation
Before saying hi to Chatify, please prepare the following three items.
```
1. Spotify App Client ID
2. Spotify App Client Secret
3. OpenAI API key
```
### Spotify API
Please create any app from the [Spotify for Developers Dashboard](https://developer.spotify.com/dashboard) and retrieve the Client ID and Secret from the settings screen.
### OpenAI API
Please create an API key from [the OpenAI account screen](https://platform.openai.com/account/api-keys) and obtain it.
## 3. Greetings to Chatify
You need to provide a couple of information to Chatify at first.
```
$ chatify greeting
```

## 4. Talk with Chatify
Let's talk to Chatify and embark on a journey to discover new music!
```
$ chatify hey
```

# β¨οΈ Operation
| Key | Action |
| ---- | ---- |
| tab | switch the view |
| characters | input words |
| q, ctrl+c | quit |
| enter | answer, select |
| β, β | move in list |
| β, β | turn page |
# π¨ Options
## `greeting` command
### `-p`, `--port`
Flag to specify the port number for Spotify authorization. Default number is 8888.
## `hey` command
### `-n`, `--number`
Flag to specify the number of recommendations. Default number is 25 and maximum number is 100.
### `-p`, `--playlist`
Flag to enable chatify to make playlist based on the recommendation. Default is false.


# πͺ§ License
Chatify is released under MIT License. See [MIT](https://raw.githubusercontent.com/JunNishimura/Chatify/main/LICENSE)