storj/satellite/admin/ui
Wilfred Asomani c9421d11e7 satellite/admin: add endpoints to violation freeze/unfreeze users
This change adds two new admin endpoints to freeze users for ToS
violation and to remove them from that state,

Issue: https://github.com/storj/storj-private/issues/386

Change-Id: I49c922377c9cdb315ce2777fcd35dcad432b0539
2023-10-13 10:43:44 +00:00
..
build satellite/admin/ui: avoid needing an additional copy 2022-03-25 11:42:22 +02:00
src satellite/admin: add endpoints to violation freeze/unfreeze users 2023-10-13 10:43:44 +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 satellite/admin: Serve back-office static UI 2023-09-26 13:18:29 +00: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