{"id":16294717,"url":"https://github.com/thealphadollar/nephos","last_synced_at":"2025-03-20T04:30:39.026Z","repository":{"id":81602378,"uuid":"132460491","full_name":"thealphadollar/Nephos","owner":"thealphadollar","description":"Project Nephos [GSoC '18]: Automated recording, processing, and uploading of TV streams for Universities.","archived":false,"fork":false,"pushed_at":"2019-01-15T17:30:14.000Z","size":2111,"stargazers_count":21,"open_issues_count":9,"forks_count":11,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-03-17T14:35:24.765Z","etag":null,"topics":["apscheduler","ccextractor","cli-app","click","closed-captions","ffmpeg","ffprobe","nephos","sqlite3","subtitles-parsing","universities"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/thealphadollar.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":"AUTHORS","dei":null,"publiccode":null,"codemeta":null}},"created_at":"2018-05-07T12:55:11.000Z","updated_at":"2024-01-19T10:13:47.000Z","dependencies_parsed_at":null,"dependency_job_id":"d9e59ea5-4c06-47f9-88e8-f566205dcab1","html_url":"https://github.com/thealphadollar/Nephos","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/thealphadollar%2FNephos","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/thealphadollar%2FNephos/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/thealphadollar%2FNephos/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/thealphadollar%2FNephos/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/thealphadollar","download_url":"https://codeload.github.com/thealphadollar/Nephos/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244551943,"owners_count":20470957,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["apscheduler","ccextractor","cli-app","click","closed-captions","ffmpeg","ffprobe","nephos","sqlite3","subtitles-parsing","universities"],"created_at":"2024-10-10T20:16:15.817Z","updated_at":"2025-03-20T04:30:39.013Z","avatar_url":"https://github.com/thealphadollar.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cimg src=\"resources/static/nephos_logo.svg\" width=\"250px\" alt=\"logo\"/\u003e\n\n# Project Nephos [![forthebadge made-with-python](http://ForTheBadge.com/images/badges/made-with-python.svg)](https://www.python.org/) [![GPLv3 license](https://img.shields.io/badge/License-GPLv3-blue.svg)](https://www.github.com/thealphadollar/nephos/blob/master/LICENSE)\nGoogle Summer Of Code 2018 ([![Open Source Love png3](https://badges.frapsoft.com/os/v3/open-source.png?v=103)](https://github.com/ellerbrock/open-source-badges/)) Project under CCExtractor; Project Nephos\n\n# [![CodeFactor](https://www.codefactor.io/repository/github/thealphadollar/Nephos/badge)](https://www.codefactor.io/repository/github/thealphadollar/Nephos) [![Requirements Status](https://requires.io/github/thealphadollar/Nephos/requirements.svg?branch=master)](https://requires.io/github/thealphadollar/Nephos/requirements/?branch=master) [![Build Status](https://travis-ci.org/thealphadollar/Nephos.svg?branch=master)](https://travis-ci.org/thealphadollar/Nephos) [![codecov](https://codecov.io/gh/thealphadollar/nephos/branch/master/graph/badge.svg)](https://codecov.io/gh/thealphadollar/nephos)\n\n## Abstract\nProject Nephos aims at simplifying the process of moving samples from local storage to cloud for Universities by automating, almost, all the steps involved. It consists of three independent modules; recording module, processing module, and uploading module.\n\nThe recording module is responsible for managing the addition of channel lists, set up of recording jobs and saving the recorded streams. The processing module parses saved samples, associates tags, extracts subtitles and converts the video files to MP4 to reduce the file size. The uploading module uploads the processed stream files, and also shares samples with other universities if required.\n\nNephos is developed, using Python and few other open source projects. To accomplish all the above mentioned tasks with cent-percent reliability and zero failures (unless wrong data is input, which gets logged), testing and logging is an integral part of Nephos development and running cycle, respectively.\n\n[Project Link](https://summerofcode.withgoogle.com/projects/#5889497431015424)\n\n***\n## Installation (And Setup)\n1. Nephos requires following environment dependencies:\n    - Python 3\n    - Pip\n    - pipenv\n2. Nephos requires following third party libraries:\n    - FFmpeg and FFprobe\n    - Multicat\n    - CCExtractor (requires tesseract-ocr-dev and leptonica-dev)\n\u003c!-- 1. 1) [Install Python3](https://kerneltalks.com/tools/install-python-3-on-linux-redhat-centos-ubuntu/)\u003cbr/\u003e --\u003e\n   \u003c!-- 2) [Install Pip](https://www.tecmint.com/install-pip-in-linux/)\u003cbr/\u003e --\u003e\n\u003c!-- 2. 1) [Install FFMPEG and FFPROBE](https://www.vultr.com/docs/how-to-install-ffmpeg-on-centos)\u003cbr/\u003e --\u003e\n   \u003c!-- 2) [Install CCExtractor](https://github.com/CCExtractor/ccextractor/wiki/Installation)\u003cbr/\u003e --\u003e\n   \u003c!-- 3) [Install Multicat](https://github.com/mmalecki/multicat/blob/master/trunk/INSTALL)\u003cbr/\u003e --\u003e\n3. 1) Nephos uses `mail` client to send email notifications, please [configure](https://superuser.com/questions/351841/how-do-i-set-up-the-unix-mail-command) it before running Nephos.\n   2) You'll be asked to enter the email address(es) of recipient(s) of critical mails\nat initialisation of Nephos. It is only asked on first launch, to edit it\nlater:\n        - Go to Nephos directory, default is $HOME/Nephos\n        - Edit the hidden file \".critical_mail_addrs\", multiple addresses separated by\n  a single whitespace\n        - Restart Nephos after editing the file\n        - In case of any email address fails at RegEx match, it'll be listed in info\n  logs, ignored by config handler and you can correct it in the same file\n\n\n### Install Using Git Clone\n4. 1) Clone the repository, `git clone https://github.com/thealphadollar/nephos.git \u0026\u0026 cd nephos`\u003cbr/\u003e\n   2) Run the script, `sudo ./install.sh`\u003cbr/\u003e The script will install all the aforementioned system dependencies and python libraries for Nephos.\u003cbr/\u003e\n   NOTE: Running `pip3 install .` Will automatically determine your distribution and install the dependencies for you\n5. 1) Observe and modify configurations available in `$HOME/Nephos/config` (**especially maintenance and module configurations, and processing script**)\u003cbr/\u003e\n        - Update path to various libraries, in the config file, being used; **fatal error might error** in case where the path to binaries (soft links work) is not appropriate.\n   2) Add `nephos_start.sh` as [a cron job to be executed at startup](https://www.cyberciti.biz/faq/linux-execute-cron-job-after-system-reboot/) in `root` crontab.\u003cbr/\u003e\n        `@restart /path/to/nephos_start.sh 2\u0026\u003e ~/Nephos/boot_start.log`\n   3) Run nephos using `sudo ./nephos_start.sh`. This command runs `Nephos` under a new `screen` session. Press `ctrl + a` and then 'd' to detach from the session while it keeps running in the background.\n\n## To Add Channels And Jobs\nPlease go to [Nephos Config](https://github.com/thealphadollar/NephosConfig) repository to modify the channels, jobs and share lists that Nephos works on.\n\n## Running the Web Interface\nNephos has a Web Interface that you can see how everything works. To get started set the enviorment `FLASK_APP` to the path where webServer.py is and run it with `flask run` and you can see the database entries in an instant!\n\nCurrently the web app offers for you to see which channels are jobs in the database and can be accessed by visiting the url flask provides with the following paths: `/channels` and `/jobs`\n\n## Developer Documentation\nDevelopers can view the documentation that is present for users since it is detailed and one needs to read it in order to understand how Nephos functions. Along with that, docstrings have been placed in HTML format in\n`docs/DevDocs` and can be accessed in a systematic manner by opening `docs/DevDocs/nephos.html` in a browser.\n\nYou can also go [here](https://thealphadollar.github.io/NephosDevDocs/) to access it online.\n\n## Tests\nIn order for all code to be successful and well maintanable we run tests to test out the code. To do so run `pipenv run py.test`\n\n## More Info\nFor more information regarding using Nephos and how it works, [visit the wiki](https://www.github.com/thealphadollar/Nephos/wiki)\n\n## Reporting Bugs\nBugs should be reported in the [issue tracker](https://github.com/thealphadollar/Nephos/issues). Security issues must be reported at shivam.cs.iit.kgp+nephos@gmail.com to avoid exploitation.\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fthealphadollar%2Fnephos","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fthealphadollar%2Fnephos","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fthealphadollar%2Fnephos/lists"}