Skip to content

JeffersonYu1/importify

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

38 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

importify

Created by Fu-Yao (Jefferson) Yu. Winter 2021 Personal Project.

Web app to ease creation of Spotify playlists by importing from other streaming applications or users' playlists.

About

Motivation

This project began as a CS50x final project. It is difficult to import playlists and songs from external applications into Spotify, as well as to copy other users' playlists into a personal library to make modifications. As a result, this project was built to alleviate that difficulty.

After the course, the site functionality was improved, such as by adding the option to import to existing playlists, allowing real-time front-end updates for the status of importing, etc. Additioanlly, the project was deployed via Heroku to https://importify.herokuapp.com.

Access

Currently, importify is awaiting approval from Spotify for a quota extension request. Once approved, importify will be accessible to all public Spotify users. Until then, you may sign up for importify access here. (The webpage is openly viewable without signup, but the importing functionality will not work.)

Features

Using importify, users can log in to their Spotify accounts to import playlists by pasting track names into a text box, or by providing a Spotify playlist link to copy.

For instance,

Screenshot 2022-02-03 at 18-15-44 Import By Link importify

and

Screenshot 2022-02-03 at 18-15-36 Import By Text importify

ReadMe from Version 1.0 (Original CS50x Project)

Version 1.0 Video Demo: https://www.youtube.com/watch?v=PoNl7INLp-E

Steps

  • This project was built using the VSCode IDE. At first, I considered using the CS50 IDE because of my familiarity with it, but I wanted to challenge myself and explore the an industry-standard environment.
  • I first set up VSCode by downloading and installing extensions for the languages I would be programming in, such as Python, HTML, and CSS. I then installed Python and set up a virtual environment for the project.
  • From there, I installed dependencies from pip such as Flask. I tested Flask by creating a sample index.html page and having a basic redirect if a GET request was made.

Files

  • The "importspotify" folder is dedicated for the virtual environment setup.
  • The "static" folder holds static files for webpage display, including the JS and CSS files that are linked. "style.css" was implemented by me, while the other files. such as "bootstrap.min.css" or "jquery-3.6.0.min.js", are downloaded from the internet.
  • The "templates" folder holds template files for webpages. All of the other .html files are extended from the layout.html template, as there are many shared elements, such as the Navbar and Footer, that are common across all pages of the site.
  • "app.py" holds the Python code for responses to the GET and POST requests from the user. These methods determine the functionality of the site when a link is clicked or a form is submitted.
  • "requirements.txt" lists the dependencies needed for "app.py" so that others can easily install at a later time.

Contact

Acknowledgments

About

Web app to ease creation of Spotify playlists by importing from other streaming applications or users' playlists.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors