/webui

TrueNAS Angular UI

Primary LanguageTypeScriptGNU General Public License v3.0GPL-3.0

Join Discord Join Forums File Issue

TrueNAS WebUI

Latest Docker Image - master

This is the project for the Angular.io WebUI for TrueNAS CORE & TrueNAS SCALE.

Testing Images

You can download and test running the latest version of the TrueNAS WebUI anytime using pre-built docker images.

Images only require the environment variable TNIP to be set to the IP or Hostname of your local TrueNAS instance.

Example:

# docker container run -it -e TNIP=192.168.0.30 -p 8080:80 ixsystems/truenas-webui:latest

This would allow you to access the running WebUI on http://localhost:8080

NOTE: Pull requests are also generated as Docker images and can be used for testing by replacing the ":latest" tag with the pull-request ID. I.E. "ixsystems/truenas-webui:5010"

Development requirements

  • yarn >= 1.12
  • Node.js >= 14
  • Running TrueNAS CORE or TrueNAS SCALE Nightly Machine (VM is fine)

Getting started

Have a system with yarn.

Checkout TrueNAS git repository:

$ git clone https://github.com/truenas/webui.git
$ cd webui

Install yarn packages:

$ yarn install

Generate an environment file

$ yarn check-env

Configure the remote TrueNAS system you'd like to connect to. (if your ip address changes later you may repeat this step)

$ yarn ui remote -i <ip address or FQDN of the server where TrueNAS is running>

NOTE: It is highly recommended to create an alias in your shell of choice to 'ui' to minimize typing If this script gives a typescript error in the console, please see the section above on generating an environment file

zsh example: alias ui='yarn run --silent ui

Starting the Application

To start run yarn start

This runs a local webserver with the new WebUI, by default at http://localhost:4200. If this webserver is kept running, changes to the project will be rebuilt incrementally.

To run the production build, run

yarn run build:prod:aot

Getting errors about missing packages?

yarn install

Getting permission errors or Failed messages when trying to run yarn start?

From the webui repo

rm -rf node_modules (may need root)
rm yarn.lock 
yarn cache clean --force
yarn install

This should bring the yarn environment back to a usable state.

Translating Text to Other Languages

All JSON files for translating TrueNAS's web interface are included in this repository under src/assets/i18n.
These can be edited using your editor of choice or directly via the GitHub Web based code editing system.

Some strings may use ICU Message Format for pluralization.
You can move tokens around and adjust them for your language.

For example:

Deleted {n, plural, one {# snapshot} other {# snapshots}}

can be translated in Russian as:

{n, plural, =1 {Снимок удален} few{# снимка удалено} other {# снимков удалено}}

You can test your strings in an online editor.

Stock images used on the dashboard UI are courtesy of Pixabay.com and are subject to the Simplified Pixabay License. Full license details can be found at https://pixabay.com/service/license/.

Contributing

Learn how you can contribute to our project and help us maintain it on our Contribution guide.