Skip to content

Latest commit

 

History

History
71 lines (53 loc) · 3.69 KB

README.md

File metadata and controls

71 lines (53 loc) · 3.69 KB

logo

A Bandcamp inspired website, where users can upload, download, and stream music. Built mobile-first and optimized for all devices.

🔧 Technologies and Tools

Back-end

Ruby Rails PostgreSQL AWS S3

Front-end

JavaScript React Redux HTML5 CSS3 SASS Font Awesome

Misc

Heroku Webpack ESLint Prettier

💻 Demo

Responsive Design

Desktop Mobile
desktop mobile

Search Functionality

search

Download Music

download

Upload Music

upload

🔍 Code Samples

Audio Player

In order to replicate Bandcamp's music player, I had to strip away the styling from the default HTML5 Audio Element and then implement my own custom controls using JavaScript. music_player

Custom Back-end Validations

Providing custom validation error messages to the user instead of the default from Ruby on Rails required me to create a class that inherited from ActiveModel::Validator. This example shows my implementation of custom error messages for the user sign up page. back-end_validations

Run Locally

Run the follow commands in separate terminal tabs.

Run the Rails back end:

rails server

Run the React front end:

npm start