Giter Site home page Giter Site logo

node-starter's Introduction

This project is an application skeleton for a typical Node.js web app.

Build Status

Getting Started

To get you started you can simply clone the node-seed repository and install the dependencies:

Prerequisites

You need git to clone the node-seed repository. You can get git from http://git-scm.com/.

A number of node.js tools is necessary to initialize and test node-seed. You must have node.js and its package manager (npm) installed. You can get them from http://nodejs.org/. The tools/modules used in this project are listed in package.json and include express, mongodb and mongoose.

MongoDB

The project uses MongoDB as a database. If you are on Mac and using Homebrew package manager the installation is as simple as brew install mongodb.

Apidoc

To install run npm install apidoc -g.

Clone node-seed

Clone the node-seed repository using [git][git]:

git clone "path from git"

Install node-seed project dependencies

npm install

Start the MongoDB server

First we need to create the db directory where the database files will live in. In your terminal navigate to the root of your system by doing cd .. until you reach the top directory. You can create the directory by running sudo mkdir -p /data/db. Now open a different tab in your terminal and run mongod to start the Mongo server.

Run the Application

The project is preconfigured with a simple development web server. The simplest way to start this server is:

npm start

Generate API documentation

npm run doc

The command will generate a /doc folder that will contain an index.html file. Open it in any browser. The file contains information about API routes.

Project Structure

The project contains two main folders. The first is called /app and has the following subfolders:

  • config - folder that contains: express and mongoose setup, API routes and configurations for development and production environments.
  • controllers - folder that will contain all controllers involved in the app
  • models - folder with the models considered
  • middlewares - folder with functions that have access to the request object (req), the response object (res), and the next middleware function in the application’s request-response cycle
  • utilities - folder with functions that can be used in app to avoid repetitive code

The second folder is called /doc and contains API route documentation generated with apidoc ( see above how to re-generate the index.html )

node-starter's People

Contributors

alexnm avatar danielmocan avatar

Watchers

James Cloos 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.