GithubHelp home page GithubHelp logo

tvshows's Introduction

TV Shows

Simple application made as a part of recrutation process.

Architecture & dependencies

Requirements

Application needs for running:

  • php 7.3+ server

Application needs for set up:

  • composer

Installation

  1. Download the repository by preffered way
  • https: git close https://github.com/cichowski/tvshows.git
  • ssh: [email protected]:cichowski/tvshows.git
  • or just download archive and unzip files
  1. Run composer install

  2. Rename .env.local to .env

  3. Change APP_URL or even other values in .env

Configuration

Number of results per page returned by API:

  • Set resultsPerPage in config/tvshows.php file

Number of results per single load on view page:

  • Set resultsPerPage in Form class initialization in public/js/app.js file

Usage

API

  • address:
    • your.doman/api/
  • parameters:
    • q - search phrase (required, alphanumerical)
    • p - ask for a specific page (positive integer, default: 1)
    • s - page size: number o results on single page (positive integer, default: see Configuration)
  • examples:
    • localhost/api?q=castle
    • json-api.local/api?s=12&p=1&q=war

WEB

  • address:
    • your.domain/

Issues

  1. For some reason http://www.tvmaze.com/ API right now returns maximum 10 results.
  2. Keep in mind that either this application and TV Maze caches every search query for 1 hour.

ToDo

  • Add list view with more information about shows
  • Cover whole the rest of PHP code with unit tests
  • Write tests for Vue code
  • Write OpenAPI description for API endpoint
  • Build Swagger documentation using above
  • Throttle infinite scroll event
  • Refactor app.js
  • For many users: cache tv shows in advance

License

The Lumen framework is open-sourced software licensed under the MIT license.

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.