GithubHelp home page GithubHelp logo

lawrecks / movies-api Goto Github PK

View Code? Open in Web Editor NEW
2.0 1.0 0.0 116 KB

A NodeJs service which allows you to create a movie based on it's title (additional movie details will be fetched) and fetch all created movies.

License: MIT License

JavaScript 97.67% Shell 1.60% Dockerfile 0.73%
nodejs docker circleci express postgresql

movies-api's Introduction

movies-api

A NodeJs service which allows you to create a movie based on it's title (additional movie details will be fetched) and fetch all created movies.


Built With

  • Node.js
  • PostgreSQL
  • Docker
  • Git
  • Express
  • Mocha, chai and supertest
  • Json Web Token
  • Postman
  • Circle CI

Requirements

You will need Node.js (version 14 and above) and a node global package installed in your environment.

Node

  • Node installation on Windows

    Just go on official Node.js website and download the installer. Also, be sure to have git available in your PATH, npm might need it (You can find git here).

  • Node installation on Ubuntu

    Installation Commands
      $ sudo apt install nodejs
      $ sudo apt install npm
    
  • Other Operating Systems

    You can find more information about the installation on the official Node.js website and the official NPM website. If the installation was successful, you should be able to run the following command.

    Verify versions
      $ node -v
      v14.17.5
      $ npm -v
      6.14.14
    

Clone this project

$ git clone https://github.com/lawrecks/movies-api.git
$ cd movies-api

Configure app

  • Create a file named .env in the project root directory
  • Add the environment variables as described in the .env.example file

Install dependencies

$ npm install

Run with Docker

Prerequisites

You need to have docker and docker-compose installed on your computer to run the service

Run the app with following command

$ JWT_SECRET=secret OMDB_API_KEY=your_omdb_api_key docker-compose up -d

You can obtain your API KEY at https://omdbapi.com/apikey.aspx

By default, the app should run on port 1918

To stop the app, run

$ docker-compose down

Run with NPM

Running this project locally

$ npm run dev

Running tests

$ npm test

Documentation

Postman: https://documenter.getpostman.com/view/10148336/UVyn2JwS

Database Schema

https://dbdiagram.io/d/62415a91bed61838730be234

Show your support

Give a ⭐️ if you like this project!

Copyright

Copyright (c) 2021 Ugochukwu Ejiogu

movies-api's People

Contributors

lawrecks avatar

Stargazers

 avatar  avatar

Watchers

 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.