This is a Full Stack application to post your record collection. It's built with the Mongo(DB/ose), Express, React & Node (MERN) stack. It has two full CRUD features, a user account & a record profile. It is styled with Bootstrap, featuring a mobile-first design. Lastly, you can play the drums with your keyboard and I hope you think it's as cool as I do.
Git Url
- Node.js
- React
- Express
- MongoDB
- Mongoose
- CSS Bootstrap
- BCrypt
Models define the data of a piece of content (e.g. a record),
Controllers
Views
Import router & tell server to use it when it recieves a request from "https:...../drum"
define get route in controller to return drum.jsx from views folder
Create Views file
Import app.js in <Layout> to make it avaiable to all components
Create JavaScript Logic
Grab DOM elements & add event listeners
playAudio()
- grab the audio file associated with the keyboard key that triggered the event
- if there's an audio file, then play it from the beggining
removeClass()
- removes css effect
Create API end point to get list of album names & artists
Create API controller
JavaScript
findResults()
create RegExp object from search term
filter thru records to find matches
displayResults()
invoke findResults using user input
only handle events triggered by the keyboard
map thru array of matching albums & artists
- display nothing if search bar is empty
- create RegExp from user input
- add class to highlight user input
- create <li> that links to show page of record add <li> to the DOM
- RESTful - “Representational State Transfer”. It is a set of rules that developers follow when they create their API. One of these rules states that you should be able to get a piece of data (called a resource) when you link to a specific URL
- Regular Expression (Regex) - A regular expression is a sequence of characters that forms a search pattern. The search pattern can be used for text search and text replace operations.