Giter VIP home page Giter VIP logo

network_api's Introduction

mynetworkAPI

####HW 1 Assignment for Data Engineering w/ Ken Anderson -> Simple RESTful Service

Team wew :shipit:

  • Alex Campbell (Zandrr)
  • Edward Zhu (zhued)
  • Josh Fermin (joshfermin)

##What we implemented:

MongoDB - for local database to store the json mock data.

Mockgoose - test environment so we don't have to redo the database everytime.

mocha - Testing framework.

chai - Helper for mocha.

##How to Start Server

####Start Mongo

sudo mongod

####Init Server (npm)

npm install

npm start

####Populate MongoDB

curl http://localhost:3000/people/add

##To Test!

npm test

##What You Can Do!

Get COUNT of database entries

curl http://localhost:3000/count

Get ALL people & details in database - as JSON

curl http://localhost:3000/people

Get a SINGLE entry of a person

curl http://localhost:3000/person/:id

ADD a single person entry

curl -X POST http://localhost:3000/person?first_name=alex&last_name=campbell&[email protected]&country=noobland

UPDATE

curl -X PUT http://localhost:3000/person/:id?first_name=edward

DELETE single person entry

curl -X DELETE http://localhost:3000/person/:id

RESET database

curl http://localhost:3000/people/reset

DROP database

curl http://localhost:3000/people/drop

ADD database

curl http://localhost:3000/people/add

network_api's People

Contributors

joshfermin avatar zhued avatar

Watchers

James Cloos avatar  avatar Alex Campbell avatar Louis  avatar  avatar

Forkers

zhued joshfermin

network_api's Issues

Justin McBride's Evaluation

Pros:
Hits all the required HTTP requests
Good use of mongodb-- I like that it's a local database.
I like the testing infrastructure... It has a nice display of everything that succeeded (and failed, when I tried to make it fail)
Strong documentation

Cons:
Not all return data is json formatted.
The objects returned from the database should probably be of the aded object, not the mongodb specific details. (ie,
{
"__v": 0,
"id": 1,
"_id": "54dc1980cd2c148b6b37bb8e"
}

was returned after performing a POST).

Kevin Rau's Evaluation

Ran into a few problems trying to get this to work and having to download extra software to get this running and got it going. The README with all of the commands helped a bunch but did get some errors on my end. I liked how simple this was and how very few files were used. Simplicity is nice. Good Job!

Tyler Bussell's Evaluation

I can't stress enough how helpful your documentation is. Really made checking out your app a breeze.

The app itself worked and me the requirements for the assignment. I really liked the testing framework and how sleek the display was. The code itself was well organized and easy to navigate. Great job.

Prof. Anderson's Evaluation

Very nice use of Mongo, Express, and Node. All you need is AngularJS and you'll have the complete MEAN stack!

Great use of test frameworks and simple, easy to understand code. Great work!

Sanghee Kim's Evaluation

Pros,

a. I like you guys made test with mocha and chai. It made me understand what your service can do. Nice approach!
b. Compare to other in class projects, README.md of this project has more information about what this project do.

Cons,

a. I think limit your lines to 80 chars might make your code have better readerbility. Check the following coding style.

http://nodeguide.com/style.html

Dustin Taylor’s Evaluation

Your implementation using Javascript turned out really nicely. The code was clean, commented, and very simple to understand. There is error checking, and an effective test script. On top of everything, your README made the instructions on how to get the service up and running very simple. Nice job.

David Aragon's evaluation

Nice job. The code was clean and easy to understand. The test suite ran successfully on the first try.

I did have some problems getting mongo started locally. You may want to include more instructions around this in the README. I had to manually create the data directory: mkdir data and then start mongod with a db path flag: mongod --dbpath data. Do your setup steps assume that this directory exists?

Alexia Newgord's Evaluation

Great job with the Readme. It really helps the user walk through the necessary steps to get it running. Curl is helpful, but I think the next step will be to get some sort of client code running so that the usage is more self-explanatory.

It seems like you also did a good job researching existing testing tools. I'll need to consider checking out Mockgoose and mocha for my own app. :)

Louis BOUDDHOU's Evaluation

  • README file >>> ..best README file I've evaluated. Step-by-step instructions are legit.
  • Impressive set of testing.
  • Comments here and there help follow what's going on.
  • Well obviously, my life is made easier when YOU are telling what I can do. Thumbs up!
  • Little issue with Mongod which turns out need to be ran in a different tab
  • npm tests all passing. All requests as well.
  • Sexy API. Easy and airy. THUMBS UP!!

CHANGE THE NAME TO mynetworkAPI

ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE ALEX PLEASE

Neil Nistler's Evaluation

I really liked this API. I was able to get everything working with a little effort. Part of this may be due to the fact that I have worked with mangodb in the past and have everything already set up for it on my system. Your code was well commented and easy to understand. The README was also done nicely and made the instructions on how to get the service up and running simple.

I did notice that some of the status messages were not returned in JSON format i.e.. (POST and people/drop).

Nice Job!

Max Harris Evaluation

Didn't have mongo installed so I had to look up how to do that. Was simple but ran into errors when I hit npm start. npm test worked fine, but if I hit any endpoint using curl, all I got was the greeting html. "Looks like your trying to blah blah blah."

The API and its documentation seemed thorough however and I bet everything worked well. Just user error I guess.

Dan Bye's Evaluation

First of all, the README is very thorough. It allows for a decent understanding of the app before even starting it up. Mongodb is interesting, having only used SQL based dbs I would like to look into it (and other NoSQL dbs). The code is also thorough as far as error catching and testing environments.

Review for HW2

Criticism

  • If your npm start script runs nodemon, then you should list it in the dependencies so that I get it when I clone the repo and run npm install.
  • In the future, it might be better to send status messages in JSON (like the response to /people/drop).

Compliment

  • I like how you separated your code into different files. I used Express for this assignment and all of the server logic is in one long file. I think I like the approach you used better.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.