GitXplorerGitXplorer
a

FamAPI

public
2 stars
0 forks
1 issues

Commits

List of commits on branch main.
Unverified
abeb1e6c04e7e31153296f802c032e9c0545e1fd

REF: Update steps and screenshots

aaitikgupta committed 4 years ago
Unverified
6ab035281708b1554aa3f1a57904903abe58192d

ENH: Add Screenshots

aaitikgupta committed 4 years ago
Unverified
0b6782dc34fbff894b823eb98baae754e394fae5

REF: Specify app name and favicon

aaitikgupta committed 4 years ago
Unverified
29fd9a687a0e427424abd9f265201966479f4d25

ENH: Add Navbar component

aaitikgupta committed 4 years ago
Unverified
739a9a4e35302de1dd8bf422a6e98f2c4cb92ca0

ENH: Stitch everything together

aaitikgupta committed 4 years ago
Unverified
6c374174ef5f7895f714b4aa78f4dc0397a15774

ENH: Add Search component

aaitikgupta committed 4 years ago

README

The README file for this repository.

FamAPI

This application is a demonstration of following APIs:

  • Calls YouTube APIs continuously in background with some intervals
  • Fetches latest videos and stores specific fields with indexing in database (MongoDB)
  • A GET API which returns the stored video data in a paginated response sorted in descending order of published datetime
  • A basic search API to search the stored videos using their title and description

Hosts FamEnd (client) at localhost:8080 and PayEnd (server) at localhost:3000.


Steps to run

The very first step would be to create a .env file in PayEnd directory (or set an environment variable):

GOOGLE_API_KEYS=api,keys,separated,by,comma

NOTE: To get the keys, follow YouTube's specifications.

The whole project is dockerized (by composing dockerized versions of client and server individually), to set everything up:

docker-compose build && docker-compose up

That's it! Or, if you prefer a non-dockerized solution:

  1. < in PayEnd directory >
    pip install -r requirements.txt
    python server.py
  2. < in FamEnd directory >
    npm install
    npm start

How to test

The client (FamEnd) hosts a Search functionality with pagination. Here's some screenshots:

Search box

image

Video Card

(blurred due to copyrights) image

Sample Logs from PayEnd

(cropped because of the API key) image

About

Aitik Gupta - aitikgupta.com/