wrolpi-help/docs/system/index.md
2023-10-15 16:31:49 -06:00

3.5 KiB

Overview of WROLPi Systems

Services

API

Software Project Purpose
Python The language of the WROLPi API and scripts.
Sanic An async web app framework, used for the API.
SQLAlchemy The database ORM.
yt-dlp Used to download videos.
SingleFile Used to create Archives.
Readability Used to extract the article from an Archive.
Chromium Used to create Archives.
FFMPEG Video processing software which is used by the API to manipulate videos
libzim Used to search the ZIM files

DB

Software Project Purpose
Postgresql Facilitates searching of files, scheduling downloads, and much more.

App

Software Project Purpose
ReactJS The framework which controls the App. Built on-top of Javascript.
SemanticUI The framework and style of the App's buttons, tables, etc.
NodeJS The run-time environment which runs the ReactJS app.

Map

Software Project Purpose
OpenStreetMap Provides the Map data
osmium Used to merge map PBF files.
osm2pgsql Used to import PBF files into Postgresql

Zim

Software Project Purpose
Kiwix Provides the ZIM files
Kiwix Server Hosts the ZIM files interface