OpenZiti is a free and open source project focused on bringing zero trust to any application.
The project provides all the pieces required to implement or integrate zero trust into your solutions.
@openziti/ziti-console
This repo hosts the Ziti Admin Console, and is designed to provide a user interface to help you administrate an OpenZiti Network via the Ziti Edge API
Part of the OpenZiti ecosystem
Interested in knowing how to easily embed programmable, high performance, zero trust networking into your application without VPNs?
Learn more about OpenZiti project.
Also, checkout core project on github
Please star us!
The OpenZiti Console is an administrative web interface for an OpenZiti network.
Read the production deployment guides for the console as well as the controller, router, etc.
To build and run the application from source, you'll also need to make sure you have the following developer tools installed and available on your command line.
Tool | Version |
---|---|
Node.js | =18 |
npm | >=8.1 |
ng | =16 |
This provides the ng
command.
npm install -g @angular/cli@16
This repository houses two projects.
- ziti-console-lib - Angular library used by the console UI.
- app-ziti-console - console UI with two deployment modes.
- Single page application mode (recommended)
- Node.js server mode (
server.js
, deprecated)
From the project root:
-
Install the projects' dependencies.
npm install
-
Build the library project with Angular.
ng build ziti-console-lib
This is the recommended approach.
-
Build the console project with Angular.
ng build ziti-console
-
You must host the static files with a web server. See the deployment guide for details on configuring the controller to host these files.
-
Access the console at the controller's address: https://localhost:1280/zac/
This deployment mode is deprecated by the SPA mode.
-
Build the console project with Angular.
ng build ziti-console-node
-
If developing the standalone Node server, run it.
node server.js
-
Access the console at http://localhost:1408
-
Configure the server with the URL of the controller's edge-management API, e.g. https://localhost:1280
There are two elements to the Angular app.
From project Root:
-
Install dependencies
npm install
-
Run & watch changes in the core library in ziti-console-lib by running the npm script watch:lib
ng build ziti-console-lib --watch
- Note: The NPM library is referenced/linked in package.json as "ziti-console-lib": "file:dist/ziti-console-lib". This library includes the pure javascript code it shared with ziti-console, and the Angular code it shares with other apps.
-
Then in a separate window run & watch changes in the main application app-ziti-console
ng build ziti-console-node --watch
This ensures changes made to the NPM library get pulled into the Angular app as you are developing