Full Stack CRUD Assessment - todo

Week of 09/14.

Server-Side

  1. Create the project structure

  2. Write mocha and chai tests - example

  3. Utilize the following resource - exercises (yes, this is for class exercises)

  4. Create the RESTful route structure:

  • GET (ALL exercises) - /api/v1/exercises
  • GET (a single exercise) - /api/v1/exercise/:id
  • POST - /api/v1/exercises
  • PUT - /api/v1/exercise/:id
  • DELETE - /api/v1/exercise/:id
  1. Setup MongoDB, Mongoose, and define your schema:
var Exercise = new Schema({
  name: String,
  description: String,
  tags: [String]
});

Example tags - "javascript", "jquery", "mongo", "node"

  1. Update each route to connect to the database and return JSON. Make sure to test along the way.
  2. Add MONGO_URI as an environment variable so that you are using a different database for testing vs. development. You can use either:

Client-Side

  1. Render a single index.html file, which includes-
  • a form for adding (POST) a new exercise to the collection
  • all exercises below the form
  • a delete button next to each exercise to, well, delete it
  • an edit button to update each exercise (this could display a form in the HTML document or, even better, a modal)
  1. Handle client-side form validation with HTML5 attributes.
  2. Handle the form submission with jQuery. This must be a SPA (single page application)

Deployment

  1. Deploy to Heroku

Bonus

  1. Add in all of the exercises up to this point to create an exercise API!
  2. Add Angular