Coder Social home page Coder Social logo

node-rest-template's Introduction

REST Template

This is a sample application template, for REST services that run on the Node JS platform. This template uses the following technologies:

###Application Tools

  • Node JS: Core platform; engine on which all server side code executes
  • Restify: REST services framework
  • Winston: Logging framework.

###Development Tools

  • npm: Server side package manager. Manages server side dependencies (node modules).
  • grunt: Javascript task automater. Used to automate common development tasks - builds, tests, etc.

###Project Structure The project has the following structure.

<ROOT>
 |--- server            [Server side files]
 |   |--- routes        [Express.js route definitions]
 |
 |--- test              [Test files]
 |   |--- server        [Server side testing files]
 |
 |--- logs              [Directory for log files]
 |
 |--- Gruntfile.js      [Grunt configuration file - provides basic tasks]
 |--- package.json      [Package configuration file - basic app info; node dependencies]
 |--- bower.json        [Client side dependency configuration file]
 |--- .jshintrc         [Configuration file containing JavaScript linting settings]
 |--- .gitignore        [List of files to be ignored by git]

The application and test code is completely self contained within the server directory.

##Usage

###Cloning This template may be used by cloning the repository and subsequently pointing the cloned version to an upstream remote repository.

Given that this is a starter template, it is optimal if the repository is cloned with no history by executing

git clone <url> --depth 0

Once the template has been cloned, the upstream repo that this project points to may be changed by executing

git remote remove origin
git remote add origin <url>

Alternately, the developer can choose to delete the .git directory, and reinitialize git by executing:

rm -rf .git
git init

###Gruntfile This project template is provided with a Gruntfile that contains task definitions for most common development activities. This includes - linting, testing (client, server and e2e), building, and bumping version numbers. It is strongly recommended that the tasks defined in the Gruntfile be leveraged to the maximum extent possible. More information can be obtained by typing:

grunt help

node-rest-template's People

Contributors

vamship avatar

Watchers

 avatar

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.