Giter Site home page Giter Site logo

docsys-fs-es6's Introduction

Build Status codecov.io Coverage Status

DOCUMENT MANAGEMENT SYSTEM (DOCSYS)

This is a system for managing documents, users and roles. Users have defined roles which determine what they can do. Users create documents and specificy the roles that are allowed to access the document. The user role combined with the roles allowed to access a document determine what a user can do to the document. The system was developed using moongose an ODM for node. The front end is implemented using React JS and flux.

Installation & Usage

  • Download and install Node Js and MongoDB
  • Clone the repository or download the project zip file from the project github page here. Unzip it.
  • Navigate to the root of the folder and ensure you are in the master branch
  • Run npm install to install required dependencies
  • Run gulp to build project folders and start the server.
  • The application can be accessed locally at http://localhost:8080 or DOCSYS online.

Testing

Back end testing is done using superagent and jasmine node. Superagent is used to make requests to the server and tests done on the responses. Front end testing is executed using Mocha, chai, enzyme and sinon. Mocha is the testing framework while sinon is used to spy on calls, stub and mock functions. Enzyme is used for assertions. To test the system, navigate to the root folder of the project and make sure you are in the master branch by running git branch. To test the app on the command line, run the following command.

Test coverage was achieved through the use of Karma and Instanbul. To get coverage reports run karma start at the terminal. Ensure Karma is installed globally.

Express Routes

The API endpoints were created using express router. To access them on a http client or browser, run node index.js on your terminal at the root of the project folder. The routes are defined under server/routes.

Continuous intergration

Initially, Circle CI was used in the project for continous intergration before switching to Travis CI exclusively due to errors in installing packages. A history of the builds can be seen in these links. Circle CI. Travis CI.

Project Management

This project was managed using Pivotal tracker. Click here to see the project page.

docsys-fs-es6's People

Watchers

 avatar  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.