Skip to content

hrr37-sdc-johnson-5/hannah-sdc-albums

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Bandland

Bandland is a web application that allows for artists to share music with fans and for fans to support them.

Tasked with reworking backend of web application to improve scalability and handle higher traffic

  • Creating data generation script and scaling database to generate and seed 10M records. Stress testing and analyzing two databases, PostgreSQL and Cassandra, to determine best performance for the use case.
  • Building out CRUD API routes that will query and use the new database. Performance tuning as needed.
  • Scaling codebase to support (a minimum of) 100 requests per second on EC2 using a t2.micro instance.

Related Projects

Table of Contents

  1. Usage
  2. Requirements
  3. Development

Usage

Some usage instructions

Requirements

An nvmrc file is included if using nvm.

  • Node 7.6.0+

Development

Installing Dependencies

From within the root directory:

npm install -g webpack
npm install -g nodemon
npm install

CRUD API Routes

Purpose Path HTTP Verb Request body Response body
read (view) all recommended albums api/albums/:id GET none [{id: '01', albumName: 'cool dog', artist: 'Bandwidth', albumArt: '/path/to/img', tags: 'pop, psychedelic', description: '...' }, {id: '02', albumName: 'fun tunes', artist: 'Bimby', albumArt: '/path/to/img', description: '...', tags: 'pop, trance' }]
create new album api/albums/:id POST {id: '03', albumName: 'bark', artist: 'Joyknee', albumArt: '/path/to/img', description: '...', tags: 'pop, soul'} {id: '03', albumName: 'bark', artist: 'Joyknee', albumArt: '/path/to/img', description: '...', tags: 'pop, soul'}
update existing album api/albums/:id PUT {id: '04', albumName: 'dem boyz', artist: 'Ziggyzag', albumArt: '/path/to/img', description: './.', tags: 'pop, funk' } {id: '04', albumName: 'dem boyz', artist: 'Ziggyzag', albumArt: '/path/to/img', description: 'new...desc', tags: 'pop, funk' }
delete specific album api/albums/:id DELETE {id: '05', albumName: 'wambam', artist: 'Sassee', albumArt: '/path/to/img', description: '...', tags: 'pop, electro'} {id: '05', albumName: 'wambam', artist: 'Sassee', albumArt: '/path/to/img', description: '...', tags: 'pop, electro'}

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 100.0%