Diario
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
Supporting Packages
Linter(s)
- ESLint - Linter Tool
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
- Postman - API Toolchain
Testing with Postman
- After installing as shown above
- Navigate to localhost:8000 in Postman to access the application
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.