storj/satellite/admin/ui
Vitalii eb636f5b57 satellite/admin: add UI functionality to update user's or project's user agent
Implemented UI functionality to allow prod owner to update user's or project's user agent.

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

Change-Id: Ibe47e735f3c7a9fdf05b70735ebcecbac5c94ce8
2023-06-16 20:14:01 +00:00
..
build satellite/admin/ui: avoid needing an additional copy 2022-03-25 11:42:22 +02:00
src satellite/admin: add UI functionality to update user's or project's user agent 2023-06-16 20:14:01 +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