Skip to content

Dependencies

Matej Plavevski edited this page Dec 15, 2018 · 3 revisions

The page provides brief details on what each of the dependency is used for in Nephos. This is a help page, aimed mostly at developers and contributors.

Basic Info

Below are all the Nephos' dependencies:

  • Pydash
  • coloredlogs
  • PyYAML
  • click
  • APScheduler
  • SQLAlchemy
  • google-api-python-client
  • oauth2client
  • Flask
  • Flask-SQLAlchemy
  • Flask-WTF

PyDash

PyDash is used to make the process of data insertion and extraction from data types, such as python dictionary and lists, easier. An example is given below.

dict1 = {
  key1: {
    "key2": value  
  }
}
print(pydash.get(dict1, "key1.key2"))
>>> value

coloredlogs

coloredlogs enables colored terminal output for Python’s logging module.

coloredlogs demo

PyYAML

PyYAML is used to handle the loading of configuration and data files, which are in YAML format. This format has been chosen due to it's human readable asthetics and way of writing.

You can read writing configuration files in YAML for more details.

Nephos uses PyYAML's safeload method to load data into the program. The method forbids launching input as a script and is hence a better method than load.

click

click is a Command Line Interface creation tool, and the initial interaction between User and Nephos uses the module.

APScheduler And SQLAlchemy

APScheduler, with SQLAlchemy jobstore, is used to manage the scheduling of the jobs. The background scheduler from the module is used in Nephos; it stores jobs in a database permanently, and executes the tasks at designated time, all while running in the background.

google-api-python-client

Google python API is used to handle all the interactions with Drive API to make uploads and share them with the emails provided.

oauth2client

OAuth2Client handles all the authentication; we use flow method to authenticate with the google Drive.

Flask

Flask Is a Framework used to make the Web App. Flask Handles every interaction on the Web User the User Does

Flask-SQLAlchemy

Flask-SQLAlchemy Is a Plugin for Flask that is used for to make the database connections.

Flask-WTF

Flask-WTF Is a Plugin used for creating, rendering and handling forms in a flask web app