/Diario

Diario is an online journal where users can pen down their thoughts and feelings.

Primary LanguageJavaScript

Diario

Build Status Coverage Status

Diario is an online journal where users can pen down their thoughts and feelings.

Table of Contents

Pivotal Tracker

Project is currently being built with the Project Management Tool, Pivotal Tracker. You can find the template at https://www.pivotaltracker.com/n/projects/2183705

Template

Template is hosted at https://samdiano.github.io/Diario/UI

API Deployment

API is deployed at https://mi-diario.herokuapp.com/api/v1/

API Documentation

API is documented at https://mi-diario.herokuapp.com/api-docs

API Endpoints

HTTP VERB ENDPOINT FUNCTIONALITY
GET /api/v1/entries Fetch all entries
GET /api/v1/entries/:entryId Fetch a single entry
POST /api/v1/entries Create an entry
PUT /api/v1/entries/:entryId Modify an entry
DELETE /api/v1/entries/:entryId Delete an entry
POST /api/v1/auth/login Sign in auser
POST /api/v1/auth/signup Sign up a user
GET /api/v1/profile Get details of logged in user
PUT /api/v1/profile Update details of logged in user

Technologies

  • NodeJS - Runtime Environment
  • ExpressJs - Web Application Framework
  • Npm - Dependency Manager

Supporting Packages

Linter(s)

Compiler

  • Babel - Compiler for Next Generation JavaScript

Test Tools

  • Mocha - JavaScript Test Framework for API Tests
  • Chai - TDD/BDD Assertion Library for Node
  • Istanbul(nyc) - Code Coverage Generator

Features

Users

  • Sign Up
  • Sign In
  • Create Diary Entries
  • Modify Diary Entries
  • Delete Diary Entries
  • Set notification

Getting Started

Installation

  • git clone Diario
  • Run npm install to install packages
  • Run npm start to start the server
  • Navigate to localhost:8000 in browser to access the application

Testing

Prerequisites

Testing with Postman

Testing with Coverage Data

  • After installing as shown

  • Run npm test

  • It will run test and display coverage data as generated by Istanbul's nyc

Development

You can run npm run start:dev in development to use Nodemon

Nodemon watches for file changes and restarts your code.