storj/web/satellite
Egon Elbre 97e6e5a6a3 build: improve npm build
Add go.mod to node_modules folder, that way Go compiler doesn't
need to scan the node_module directories for any Go code.

Change-Id: I747909416490c847d6b4bfa3438fea66660fcd53
2022-07-01 10:51:53 +00:00
..
node_modules build: improve npm build 2022-07-01 10:51:53 +00:00
scripts ci: optimize benchmarks 2021-10-08 19:42:40 +03:00
src web/satellite: access grant flow ui bugs fixed 2022-06-30 10:00:26 +00:00
static web/satellite: access grant flow ui bugs fixed 2022-06-30 10:00:26 +00:00
tests/unit web/satellite: common table component created 2022-06-19 14:52:42 +00:00
.env satellite: added ability to inject stripe public key post build (#3560) 2019-11-18 13:38:43 +02:00
.eslintrc.js web/satellite: bump dependencies 2022-05-04 15:02:01 +00:00
.gitignore build: improve npm build 2022-07-01 10:51:53 +00:00
.stylelintignore web/: add custom linter for requiring @vue/component 2021-09-01 13:56:37 +00:00
.stylelintrc.js web/satellite: rework navigation sidebar styling 2022-06-17 17:55:47 +00:00
index.html {satellite}/web,console,testsuite: remove old navigation structure 2022-06-06 16:43:05 +03:00
jest.config.js web/satellite/jest.config: Always use UTC 2022-05-10 17:46:37 +00:00
jest.setup.ts web/satellite: bump dependencies 2022-05-04 15:02:01 +00:00
package-lock.json satellite/console,web/satellite: Implement hCaptcha 2022-05-13 14:57:45 +00:00
package.json satellite/console,web/satellite: Implement hCaptcha 2022-05-13 14:57:45 +00:00
README.md web/satellite,satellite/console: Overhaul password reset 2021-08-12 17:40:53 +00:00
tsconfig.json web/satellite: bump dependencies 2022-05-04 15:02:01 +00:00
vue.config.js Revert "web/satellite: use aws-sdk v3" 2022-05-13 09:31:12 +00:00

storj-dev-panel

Project setup

npm install

Compiles and hot-reloads for development

npm run serve

Compiles and minifies for production

npm run build

Run your tests

npm run test

Lints and fixes files

npm run lint

Run your unit tests

npm run test:unit

Build docker container

From root of the repository, run:

make satellite-ui-image

Run docker container

docker run -p 8080:8080 storjlabs/satellite-ui:latest

1. Project structure:

  • src folder: contains main project components such as api, store, router, etc.
  • static folder: contains all project static resources such as images, fonts, pages.
  • tests folder: - contains project unit tests.
  • configuration files.

src

  • api folder: contains API for project modules such as auth, project, etc. We are using both GraphQL and HTTP implementations.
  • components folder: contains hierarchy of vue single file components sorted thematically.
  • router folder: contains project browser locations structure file.
  • store folder: contains global state management file broken into modules.
  • types folder: contains project classes and types.
  • utils folder: contains constants, plugins and utility files for formatting, validation, data transferring, etc.
  • views folder: same as components, but for root ones.
  • App.vue root project component.
  • main.ts Vue instance initialization file. Here filters and declarations are placed. Also plugins, store and router are connecting to Vue instance.

static

  • activation folder: contains page template that appears after account verification via email.
  • emails folder: contains all emails templates.
  • errors folder: contains 50x and 40x error pages templates.
  • fonts folder: contains Inter font sets in ttf format.
  • images folder: contains illustrations.
  • reports folder: contains usage report table template.

tests

  • unit folder: contains project unit tests.

Configuration files

  • .env: file for environment level variables.
  • .gitignore: folders, files and extensions which are ignored for git.
  • babel.config.js: babel configuration for javascript transcompilation.
  • index.html: DOM entry point.
  • jestSetup.ts: jest configuration for unit testing.
  • package.json: file holds various metadata relevant to the project such as version, dependencies, scripts and configurations.
  • tsconfig.json: holds TypeScript configurations.
  • tslint.json: holds TypeScript linter configurations.
  • vue.config.js: holds Vue configurations.