/sms-management-api

Primary LanguageJavaScriptMIT LicenseMIT

SMS Management API

Build Status Coverage Status

Application that models an SMS API

Features

  • Manage contacts and messages
  • Send messages between contacts

API Documentation

Documentation for this API can be found here Run in Postman

Getting Started

These instructions will get you a copy of the project up and running on your local machine for development and testing purposes. See deployment for notes on how to deploy the project on a live system.

Prerequisites

This applications runs on Windows, MacOS and Linux operating systems. You need to have the following installed to run this application.

  • Nodejs >8.x.x
  • PostgreSQL > v9.6.x Database

Installation

# Clone this repository in your terminal
git clone https://github.com/emmabaye/sms-management-api.git my-project

# Change directory
cd my-project

# Install dependencies
npm install

Rename sample.env file with to .env and populate it with appropriate environment variable values, then proceed to the next step

# Migrate database models to postgreSQL database
npm run migrate

# Start application in development mode
npm run start-dev

# If you want to build for production
npm run build-server

# then start application in production mode
npm run start

Running the tests and coverage

 # Run server-side tests
 npm run test

Coding style tests

This application uses ESLint to lint ES6 code.

#Lint code
npm run lint

Deployment

The scripts in package.json are setup for ease of deployment on Heroku or any nodejs hosting provider. Follow this tutorial if you need help, https://devcenter.heroku.com/articles/deploying-nodejs

Built With

Contributing

Feel free to contribute to this repository. Your pull requests are welcomed

Authors

License

This project is licensed under the MIT License - see the LICENSE.md file for details

Acknowledgments

  • Thanks to everyone that assisted me in building this application.