Skip to content

Latest commit

 

History

History
68 lines (43 loc) · 2.83 KB

README.md

File metadata and controls

68 lines (43 loc) · 2.83 KB

SharePoint Project Portfolio

Originally generated from HotTowel Angular; however, updated for SharePoint integration support.

Opinionated AngularJS style guide for teams by @john_papa

More details about the styles and patterns used in this app can be found in John's AngularJS Style Guide and AngularJS Patterns: Clean Code course at Pluralsight.

AngularJS seed project using npm, bower, and gulp. Includes unit tests. Configured to run against SharePoint but will require configuration to point to your SharePoint site after creating the necessary SharePoint lists.

Prerequisites

  1. Install Node.js
  1. Install these NPM packages globally

    npm install -g bower gulp nodemon`

    Refer to these instructions on how to not require sudo

Running SharePoint Project Portfolio

Linting

  • Run code analysis using gulp vet. This runs jshint, jscs, and plato.

Tests

  • Run the unit tests using gulp test (via karma, mocha, sinon).

Running in dev mode

  • Run the project with gulp serve-dev --sync

  • --sync opens it in a browser and updates the browser with any files changes.

Building the project

  • Build the optimized project using gulp build
  • This create the optimized code for the project and puts it in the build folder

Running the optimized code

  • Run the optimize project from the build folder with gulp serve-build

Installing Packages

When you generate the project it should run these commands, but if you notice missing pavkages, run these again:

  • npm install
  • bower install

core Module

Core modules are ones that are shared throughout the entire application and may be customized for the specific application. Example might be common data services.

This is an aggregator of modules that the application will need. The core module takes the blocks, common, and Angular sub-modules as dependencies.

blocks Modules

Block modules are reusable blocks of code that can be used across projects simply by including them as dependencies.

blocks.logger Module

The blocks.logger module handles logging across the Angular app.

blocks.exception Module

The blocks.exception module handles exceptions across the Angular app.

It depends on the blocks.logger module, because the implementation logs the exceptions.

blocks.router Module

The blocks.router module contains a routing helper module that assists in adding routes to the $routeProvider.