ShaneIsrael / Apollo

A companion web app for your HTPC media libraries

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Contributors Forks Stargazers Issues MIT License LinkedIn


Logo

Apollo

A companion app for your HTPC media libraries
View Demo · Report Bug · Request Feature

Table of Contents
  1. About The Project
  2. Installation
  3. Local Development
  4. Usage
  5. Contributing
  6. Contact

About The Project

I started this project in August of 2021 in my free time. It initially started out as me experimenting around with my own media library and quickly grew into what you see now.

Apollo is a companion app for your HTPC media libraries. It's a web app that can be accessed from anywhere to display infromation about your media collection. Information about your collection is gathered from TMDb and stored in a local database. Apollo will also scan your libraries files and store file specific information about your movies and series. Apollo will also use that information to generate statistics against your libraries as seen in the video below. Apollo will also watch your media libraries in real-time for changes and make updates to its database accordingly.

Apollo is not a video player, at least at this time. It is web app to view series, movie, file and statistical information about your library. Some of the code has been rushed and will be refactored and improved (I've rushed through a lot in the last month).

HD Demo Video

product-screenshot adachi-example season-screenshot smallville-example login-view library-config-view system-config-view

Built With

Installation


Apollo is currently in very early development. While Apollo is completely functional right now, future changes will likely require you to delete your local Apollo database in order to update it.


There are two ways you can install and run Apollo.

  1. Download & Run the latest Apollo Binary
  2. Install & Run from source code (see: local development)

Local Development

If you would like to run Apollo via the source code in order to contribute you will need to have npm and Node.js installed. I reccommend installing Node.js with NVM so that you can easily switch between Node versions. This project currently uses Node 16.x but will likely change.

Prerequisites

Setup

  1. Get a TMDb Api Key
  2. Clone the repo
    git clone https://github.com/ShaneIsrael/Apollo.git
  3. Install NPM packages
    cd server && npm install && cd ../ui && npm install
  4. Enter your API Key. In the server folder, copy .env.example to .env
    TMDB_API_KEY="ENTER YOUR API KEY"
    TMDB_READ_ACCESS_TOKEN="ENTER YOUR READ ACCESS TOKEN"

Usage

  1. Start the server
    cd server && npm start
    
  2. Start the UI
    cd ui && npm start
    

Contributing

If this project is at all interesting to you please feel free to contribute or create suggestions if you have them. Any contributions you make are greatly appreciated.

For questions or feature requests please create an issue with an appropriate label here

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

Contact

Shane Israel - LinkedIn - shanemisrael@gmail.com

Project Link: https://github.com/ShaneIsrael/Apollo

About

A companion web app for your HTPC media libraries


Languages

Language:JavaScript 97.7%Language:Shell 1.1%Language:HTML 0.6%Language:CSS 0.3%Language:Dockerfile 0.2%