/politico

API hosted here 👉🏽

Primary LanguageJavaScriptMIT LicenseMIT

politico

Build Status Maintainability Test Coverage Coverage Status

Politico enables citizens give their mandate to politicians running for different government offices while building trust in the process through transparency

Features

Required Features

Required Features

  • Users can sign up.
  • Users can login.
  • Admin (electoral body) can create political parties.
  • Admin (electoral body) can delete a political party.
  • Admin (electoral body) can create different political offices .
  • Users can vote for only one politician per political office .
  • Users can see the results of election.

Optional Features

  • User can reset password.
  • A politician can create a petition against a concluded political office election.

API Documentation

The full API documentation can be found by following the link below:

https://politico2.docs.apiary.io/

Requirements and Installation

Via Cloning The Repository

# Clone the app
git clone https://github.com/vic3king/politico.git

# Switch to directory
cd politico

# Install Package dependencies
npm install

#Start the application
npm run dev-start

#View the application
navigate to localhost:3000 to view the application

Testing

$ npm run test

Technologies

Frontend

  • Html HTML is the standard markup language for creating Web pages.

  • CSS CSS is a language that describes the style of an HTML document.

  • Javascript JavaScript is a programming language that adds interactivity to your website.

Backend

  • NodeJS is a JavaScript runtime built on Chrome's V8 JavaScript engine
  • Express JS A minimalist web framework.
  • Mocha Mocha is a JavaScript test framework, has good integration with NodeJS for testing Javascript applications.
  • Chai - TDD/BDD Assertion Library for Node
  • Should - BDD style library for testing node.js HTTP servers
  • Istanbul(nyc) - Code Coverage Generator

Linter(s)

Style Guide

  • Airbnb - Airbnb maintains a very popular JavaScript Style Guide

Compiler

  • Babel - Compiler for Next Generation JavaScript

Pivotal Tracker

Project is currently being managed with Pivotal Tracker, a project management tool. You can find the stories on the politico Pivotal Tracker Board

Authors

  • Akaniru victory - Initial work - Vic3king

See also the list of contributors who participated in this project.