melvinsgit / jamming Goto Github PK
View Code? Open in Web Editor NEWCodecademy Jamming Project
Codecademy Jamming Project
Overall exceeded expectations.
This is one of the better feature request documents I have reviewed.
By implementing this feature request as a component instead of an additional method to the track component, you demonstrate an understanding of the React pattern of making web apps.
The document is well organized and communicates the feature request clearly. I agree with your caveat, it would have been nice if mentioned what would be shown in the app if the track did not a preview URL.
Great job indeed, good luck on your coding journey.
https://github.com/melvinsgit/jamming/blob/master/src/util/Spotify.js#L1-L82
Your Spotify.js file is very nicely written. This is where a lot of learners get confused and tend to make mistakes, but you did a good job with all of the functions in this file.
You seem to be missing your util folder which should contain a Spotify.js file that has methods for getting the access token, search, and saving playlists. If this sounds familiar, I would add it to your repository
https://github.com/melvinsgit/jamming/blob/master/src/components/App/App.js#L39-L44
Before pushing the track and setting the state in your addTrack method, you should also perform a check to see if you even need to add the track in the first place. Something like this should suffice:
Summary Grade: Satisfactory
Great job! I have left some comments in your code that you can check out by navigating to the "Issues" on the top bar here. You generally did an excellent job with all of your files -- they are nicely written and you generally followed good coding practices. Just a few things I noticed is that in your addTrack function in your App.js file it seems that you are pushing the track and setting the state immediately, however you should first perform a small check to see if you even need to add the track. This may look something like this:
Moreover, when you import { Component } at the top, you can just do extends Component instead of doing extends React.Component.
I also noticed that you seem to be missing a util folder with your Spotify.js file in this directory, so if you have that I would also make sure to add that to your repo.
Overall you did an excellent job with this project, and it's clear that you have grown as a React developer. Make sure to keep up the good work!
https://github.com/melvinsgit/jamming/blob/master/src/components/Playlist/Playlist.js#L1-L6
This is a minor detail, but when you do:
import { Component }
you actually can just do:
class Playlist extends Component {
instead of:
class Playlist extends React.Component {
https://github.com/melvinsgit/jamming/blob/master/src/components/TrackList/TrackList.js#L1-L27
All of files in your Components folder are implemented correctly, and you also followed excellent javascript conventions throughout. Great job!
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.