storj/satellite/admin/ui
Vitalii 4d998970d4 satellite/admin: rework update user limits functionality
Fixed nil pointer dereference panic.
Updated naming conventions so that PUT request and GET response bodies are the same (bandwidth, storage and segment).
Allowed usage of notations like 150GB, 2TB for storage and bandwidth limits.
Updated tests.

Issue:
https://github.com/storj/storj/issues/5674

Change-Id: I7ac27c00721a9b4bf507afa34cb05c4475a809ad
2023-04-25 13:38:59 +00:00
..
build satellite/admin/ui: avoid needing an additional copy 2022-03-25 11:42:22 +02:00
src satellite/admin: rework update user limits functionality 2023-04-25 13:38:59 +00:00
static satellite/admin/ui: avoid needing an additional copy 2022-03-25 11:42:22 +02:00
.eslintrc.cjs satellite/admin/ui: Migrate to SvelteKit 2021-12-17 10:27:13 +00:00
.gitignore web/{multinode,satellite,storagenode}: revert go.mod 2022-07-08 19:51:51 +03:00
.prettierrc satellite/admin/ui: Migrate to SvelteKit 2021-12-17 10:27:13 +00:00
assets_noembed.go satellite/admin/ui,web/{multinode,storagenode}: build without embedding 2022-03-29 13:18:04 +03:00
assets.go satellite/admin/ui,web/{multinode,storagenode}: build without embedding 2022-03-29 13:18:04 +03:00
build-if-changed.sh build: fix conditional run of web builds 2022-08-11 14:34:44 +00:00
build.sh satellite/admin/ui: use a valid go.mod stub 2022-09-28 12:41:30 +00:00
package-lock.json satellite/admin/ui: Update NPM dependencies 2022-06-02 13:24:15 +02:00
package.json satellite/admin/ui: Update NPM dependencies 2022-06-02 13:24:15 +02:00
README.md satellite/admin/ui: avoid needing an additional copy 2022-03-25 11:42:22 +02:00
svelte.config.js satellite/admin/ui: Update NPM dependencies 2022-06-02 13:24:15 +02:00
tsconfig.json satellite/admin/ui: Migrate to SvelteKit 2021-12-17 10:27:13 +00:00

Admin UI

Implementation details

This is a project based on the Sveltekit.

The project is set up with Typescript.

The Web App is currently straightforward as we specified that v1 would be.

The v1 is just a simple web page that exposes the Admin API through some forms and allow to a call the API without needing to use some HTTP REST clients (e.g. Postman, cURL, etc.). It doesn't offer any user authentication; the user has to know the API authorization token for using it.

The UI has a set of Svelte components that collaborate together to render an HTML form with input elements from the Admin API client. The Svelte components expect some values of a certain Typescript interfaces, types, and classes, for being able to dynamically render the HTML form and elements.

Each source has a brief doc comment about its functionality.

Development

Install the dependencies...

npm install

...then run the development server with autoreload on changes

npm run dev

Navigate to localhost:3000. You should see your app running.

Building for production mode

To create an optimized version of the app:

npm run build