Skip to content

Latest commit

History

1 Commit

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

Spotify API Java

Project Description

Spotify API Java is a Java-based client for interacting with the Spotify Web API. The project provides a clean, extensible request–builder architecture for performing authenticated Spotify operations such as search. It is designed for educational and practical use, focusing on maintainable code structure, correct request construction, and ease of integration into backend

Features

  • Retrieve Spotify information:
    • Tracks
    • Albums
    • Artists
    • Podcast Shows
    • Podcast Episodes
  • OAuth-based authentication (Application + Client tokens)
  • Search using Spotify API
  • Pagination support through a generic Paging<T> model
  • Hibernate ORM integration
  • Automatic Docker startup via Maven plugin (for PostgreSQL)

Technologies Used

  • Java 24
  • Gson
  • Hibernate ORM
  • PostgreSQL
  • Jersey (JAX-RS)
  • JUnit 4/5 & TestNG
  • Maven
  • Docker Compose (optional for PostgreSQL)
  • Spotify Web API

Get Started

Prerequisites

Run the Project

Clone the repository from GitHub:

git clone https://github.com/MKorolyova/Spotify-API-Java.git
cd Spotify-API-Java

Configure your Spotify credentials. Inside the project, create an env package under src/main/java/org/example/jamyaps/:

mkdir src/main/java/org/example/jamyaps/env

Create a class named httpConnection.java inside this package:

touch src/main/java/org/example/jamyaps/env/httpConnection.java

Add the following fields to the class:

publicclasshttpConnection {
publicstaticfinalStringTOKEN_URL = "https://accounts.spotify.com/api/token";
publicstaticfinalStringBASE_URL = "https://api.spotify.com/v1";
publicstaticfinalStringCLIENT_ID = "YOUR_CLIENT_ID";
publicstaticfinalStringCLIENT_SECRET = "YOUR_CLIENT_SECRET";
}

Run the JavaFX application using Maven (Docker daemon must run before execution of this command):

mvn javafx:run

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages