Dynamic Webpage: Difference between revisions

From Aquarium-Control
Jump to navigation Jump to search
No edit summary
Line 51: Line 51:
* <code>wget -O Chart.min.js https://cdnjs.cloudflare.com/ajax/libs/Chart.js/2.9.4/Chart.min.js</code>
* <code>wget -O Chart.min.js https://cdnjs.cloudflare.com/ajax/libs/Chart.js/2.9.4/Chart.min.js</code>
* <code>sudo ln /usr/local/src/chart.js/Chart.min.js Chart.min.js </code>
* <code>sudo ln /usr/local/src/chart.js/Chart.min.js Chart.min.js </code>
= Architecture =
The webpage uses HTML enhanced by JavaScript using Vue.js.
The communication with the web server uses the [[REST API]].

Revision as of 19:39, 8 December 2025

The dynamic webpage implements the following features:

  • Display of measurement data
  • Display of log from refill, Balling mineral dosing and feed
  • Display and interface for creating and modifying feed profiles
  • Display and interface for modifying the feed schedule
  • Display and interface for modifying the Balling mineral dosing amount
  • Display and interface for modifying the actuator schedule
  • Display and interface for setting the refill controller state

The demo of the webpage is available here

Installation

Webpage

Clone the website and the API to /usr/local/src/:

Remove existing webpage using rm /var/www/index.html.

Assuming the web server is storing the content in /var/www/html/: Create symbolic links from the web server directory pointing to the downloaded pages:

  • sudo ln -s /usr/local/src/aquarium-vue/* /var/www/html

Create symbolic links from the web server directory pointing to the API scripts:

  • sudo ln -s /usr/local/src/aquarium-api/api.php /var/www/html/api.php
  • sudo ln -s /srv/aquarium-api/functions.php /var/www/html/functions.php
  • sudo ln -s /srv/aquarium-api/db.php /var/www/html/db.php

Note: Do NOT copy ALL files from the API repository to the website.

Libraries

Download the libraries into separate folder(s) and create symbolic links. Ensure you have the required rights. Below versions are PROD version (no console error logging). The libraries are downloaded outside of the target directory of the webpage. Symbolic links need to be created to the js folder.

Vue.js

Moment.js

Chart.js

Architecture

The webpage uses HTML enhanced by JavaScript using Vue.js. The communication with the web server uses the REST API.