Project Info
This project did not submit a demo video on Devpost.
Inspiration
Oftentimes, I am feeling a certain way that only a sentence can describe, not one emotion. Playlists never seem to be able to comfort me during this time. They seem to generic and based for someone else, not me. The Spotify DJ uses my top songs that I am sick of and jumps from emotion to emotion. I wanted to change this and allow for users to input a sentence, log into spotify, and get a playlist.
What it does
At the moment, the application allows you to login to your spotify account, receive the spotify authorization code, use the code to receive the access token, and receive information about your account. Future features will allow for users to input a sentence on how they feel and will receive a playlist on spotify with that information.
How we built it
I used React to create modular components for the front end and call the Spotify authorization url. That redirects to the request a backend API, written in express.js, which reads the code from the request, and asks for the spotify access token. After, the backend API uses the Spotify access token and authorization code to request information
Challenges we ran into
One challenge is when I received the API code, and I stored it instead of sending it immediately to the backend. This made the access code invalid, causing a lot of issues.
Accomplishments we're proud of
I am proud of figuring out OAuth2. OAuth2 requires you to go through many authorization steps, and makes it quite trick of what it will accept. Figuring out how to send all the pieces to each other correctly was something I am proud of.
What we learned
I learned how to connect to the spotify API and honed in on my full stack application skills.
What's next
Future features will allow for users to input a sentence on how they feel and will receive a playlist on spotify with that information.
calhacks23
Oftentimes, I am feeling a certain way that only a sentence can describe, not one emotion. Playlists never seem to be able to comfort me during this time. They seem to generic and based for someone else, not me. The Spotify DJ uses my top songs that I am sick of and jumps from emotion to emotion. I wanted to change this and allow for users to input a sentence, log into spotify, and get a playlist.
To run: cd into server npm install npm start
cd into frontend npm install npm start
enjoy!
Analysis
View
Metric
- 8
Figures cover GitHub contributors during the hackathon window. A co-authored commit counts in full for each author, so per-member totals add up to more than the whole-team figures.
Technology
- CSSIn code
- ExpressIn code
- HTMLIn code
- JavaScriptIn code
- ReactIn code
5 of 5 appear in the indexed code.
AI coding agents
No AI coding agent signals were found in this repository.
Detected from committed agent config files and commit authorship. Absence of a signal is not proof an agent was unused.
Codebase size
Source size
14 KB
Source files
19
Counts recognized source files only; vendored directories, binaries and lockfiles are excluded, so this is smaller than the repository on disk.
Repository
ainekeenan/calhacks23
34 files · 783 KB · @ 2cdd113
Structure
Interface
3 files · 9%Screens, components and styles rendered to the user.
API & routing
11 files · 32%Request entry points: routes, handlers and controllers.
Application logic
6 files · 18%Domain rules, services and shared utilities.
Supporting
Layers are inferred from where files sit in the tree, not from reading the code. A project that names its directories unconventionally will read oddly here — open the file browser to check anything the diagram implies.
Languages
- JavaScript53%
- Markdown26%
- HTML12%
- CSS9%
Share of indexed source by file size. Binary and vendored files are excluded.
Dependencies
frontend/package.json
npm · 10- @testing-library/jest-dom
- @testing-library/react
- @testing-library/user-event
- cors
- react
- react-dom
- react-scripts
- spotify-web-api-node
- web-vitals
- +1 more
server/package.json
npm · 10- axios
- cookie-parser
- cors
- debug
- express
- http-errors
- jade
- morgan
- node-fetch
- spotify-web-api-node
Declared in the repository’s manifests at the indexed commit. A declared package is not proof it is used, and runtime dependencies are listed first.
This project’s features have not been analysed yet.
Export this project's context (description, README, evidence, key source files) to chat with an AI agent elsewhere.