Skip to content

Commit

Permalink
Version 2.0.0 (#2)
Browse files Browse the repository at this point in the history
* Documentation fixes

* Ignoring unavailable mirrors

* Updated to latest nuxt, moved to nuxt-i18n module

* Updated github actions

* Fixed error handling

* Updated docs

* Updated base frontend url

* Added vscode workspace

* Updated to latest nuxt

* Added type checks

* Trying to fix npm ci issue

* Trying to fix npm ci again

* Another workflow fix attempt

* Another fix attempt

* Updated to nuxt 3.10

* Nuxt improvements

* useFetch improvements

* Error handling improvements & fixes

* Fixes and improvements

* Build fixes

* Better SEO

* NuxtImage fixes

* SEO fixes

* Bumped year in copyright

* Updated nuxt to latest version

* Minor docs cleanup
  • Loading branch information
steel97 authored Mar 21, 2024
1 parent 2b227e7 commit 62e76d0
Show file tree
Hide file tree
Showing 68 changed files with 10,354 additions and 16,846 deletions.
13 changes: 7 additions & 6 deletions .env
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
BASE_URL=http://localhost:3000
SNAPSHOT_MIRRORS=[{"name": "Mainnet", "icon": "/images/networks/mainnet.svg", "mirrors": [{"name": "NA1", "path": "https://mirror-na1.veil.tools/"}, {"name": "NA2", "path": "https://mirror-na2.veil.tools/"},{"name": "EU1", "path": "https://mirror-eu1.veil.tools/"}, {"name": "EU2", "path": "https://mirror-eu2.veil.tools/"}]}, {"name": "Testnet", "icon": "/images/networks/testnet.svg", "mirrors": [{"name": "NA1", "path": "https://mirror-na1.veil.tools/testnet/"}, {"name": "NA2", "path": "https://mirror-na2.veil.tools/testnet/"},{"name": "EU1", "path": "https://mirror-eu1.veil.tools/testnet/"}, {"name": "EU2", "path": "https://mirror-eu2.veil.tools/testnet/"}]}]
EXPLORER_BACKEND_ENDPOINT=https://explorer-api.veil-project.com
NETWORK_PRE_MEASURE_FILE_SIZE=51200
NETWORK_MEASURE_FILE_SIZE=3145728
COOKIE_SAVE_DAYS=90
NUXT_PUBLIC_BASE_URL=http://localhost:3000
NUXT_PUBLIC_I18N_BASE_URL=http://localhost:3000
NUXT_PUBLIC_SNAPSHOT_MIRRORS=[{"name": "Mainnet", "icon": "/images/networks/mainnet.svg", "mirrors": [{"name": "NA1", "path": "https://mirror-na1.veil.tools/"}, {"name": "NA2", "path": "https://mirror-na2.veil.tools/"},{"name": "EU1", "path": "https://mirror-eu1.veil.tools/"}, {"name": "EU2", "path": "https://mirror-eu2.veil.tools/"}]}, {"name": "Testnet", "icon": "/images/networks/testnet.svg", "mirrors": [{"name": "NA1", "path": "https://mirror-na1.veil.tools/testnet/"}, {"name": "NA2", "path": "https://mirror-na2.veil.tools/testnet/"},{"name": "EU1", "path": "https://mirror-eu1.veil.tools/testnet/"}, {"name": "EU2", "path": "https://mirror-eu2.veil.tools/testnet/"}]}]
NUXT_PUBLIC_EXPLORER_BACKEND_ENDPOINT=https://explorer-api.veil-project.com
NUXT_PUBLIC_NETWORK_PRE_MEASURE_FILE_SIZE=51200
NUXT_PUBLIC_NETWORK_MEASURE_FILE_SIZE=3145728
NUXT_PUBLIC_COOKIE_SAVE_DAYS=90
24 changes: 12 additions & 12 deletions .github/workflows/build.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -10,26 +10,26 @@ jobs:
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v2
- name: Use Node.js 16.x
uses: actions/setup-node@v2
- uses: actions/checkout@v4
- name: Use Node.js 20.x
uses: actions/setup-node@v4
with:
node-version: 16.x
cache: "npm"
cache-dependency-path: package-lock.json
node-version: 20.x
- name: bypass npm bug
run: rm package-lock.json
- name: version
run: echo "::set-output name=version::$(cat VERSION.md)"
run: echo "build_version=$(cat VERSION.md)" >> $GITHUB_ENV
id: version
- run: npm ci
- run: npm install
- name: Publish release
run: npm run build --if-present
# no tests for now...
# - run: npm test

# publish
- name: Publish
run: cd ./.output/ && tar -czf veil.tools-${{ steps.version.outputs.version }}.tar.gz *
- uses: actions/upload-artifact@v2
run: cd ./.output/ && tar -czf veil.tools-${{ env.build_version }}.tar.gz *
- uses: actions/upload-artifact@v4
with:
name: veil.tools-${{ steps.version.outputs.version }}
path: ./.output/veil.tools-${{ steps.version.outputs.version }}.tar.gz
name: veil.tools-${{ env.build_version }}
path: ./.output/veil.tools-${{ env.build_version }}.tar.gz
34 changes: 17 additions & 17 deletions .github/workflows/release.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -10,51 +10,51 @@ jobs:
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v2
- name: Use Node.js 16.x
uses: actions/setup-node@v2
- uses: actions/checkout@v4
- name: Use Node.js 20.x
uses: actions/setup-node@v4
with:
node-version: 16.x
cache: "npm"
cache-dependency-path: package-lock.json
node-version: 20.x
- name: bypass npm bug
run: rm package-lock.json
- name: version
run: echo "::set-output name=version::$(cat VERSION.md)"
run: echo "build_version=$(cat VERSION.md)" >> $GITHUB_ENV
id: version
- run: npm ci
- run: npm install
- name: Publish release
run: npm run build --if-present
# no tests for now...
# - run: npm test

# publish
- name: Publish
run: cd ./.output/ && tar -czf veil.tools-${{ steps.version.outputs.version }}.tar.gz *
- uses: actions/upload-artifact@v2
run: cd ./.output/ && tar -czf veil.tools-${{ env.build_version }}.tar.gz *
- uses: actions/upload-artifact@v4
with:
name: veil.tools-${{ steps.version.outputs.version }}
path: ./.output/veil.tools-${{ steps.version.outputs.version }}.tar.gz
name: veil.tools-${{ env.build_version }}
path: ./.output/veil.tools-${{ env.build_version }}.tar.gz

publish-release:
needs: [build-website]
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v4
- name: version
run: echo "::set-output name=version::$(cat VERSION.md)"
run: echo "build_version=$(cat VERSION.md)" >> $GITHUB_ENV
id: version

- uses: actions/download-artifact@master
with:
name: veil.tools-${{ steps.version.outputs.version }}
path: artifacts/veil.tools-${{ steps.version.outputs.version }}.tar.gz
name: veil.tools-${{ env.build_version }}
path: artifacts/veil.tools-${{ env.build_version }}.tar.gz

- uses: "marvinpinto/action-automatic-releases@latest"
with:
repo_token: "${{ secrets.GITHUB_TOKEN }}"
automatic_release_tag: "latest"
prerelease: false
title: ${{ steps.version.outputs.version }}
title: ${{ env.build_version }}
files: |
LICENSE
README.md
Expand Down
7 changes: 5 additions & 2 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,8 +1,11 @@
node_modules
*.log
*.log*
.nuxt
nuxt.d.ts
.nitro
.cache
.output
#.env
dist
.DS_Store
*.cfg
*.rsa
2 changes: 2 additions & 0 deletions .npmrc
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
shamefully-hoist=true
strict-peer-dependencies=false
22 changes: 12 additions & 10 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,37 +17,39 @@ See [/docs/compiling.md](/docs/compiling.md)

# Getting started
## Tested OSes
Software tested on **Windows 11** and **Ubuntu 20.04**
Software tested on **Windows 11** and **Ubuntu 22.04**

On production environment it is recommended to use the latest version of the LTS **Ubuntu**

## Required software
- [NodeJS 16+](https://nodejs.org/en/) - required to run frontend
- [NodeJS 20+](https://nodejs.org/en/) - required to run frontend
- [Veil Explorer Backend](https://github.com/steel97/veil-explorer) instance (used to retrieve basic blockchain information)
- Snapshot mirror hosts, see [/docs/mirrors.md](/docs/mirrors.md)

## Installation
There are basic setup guide that suitable for all supported environments and full setup tutorial wrote for **Ubuntu 20.04**
There are basic setup guide that suitable for all supported environments and full setup tutorial wrote for **Ubuntu 22.04**
### Basic setup guide
#### Frontend
1. Unpack **veil.tools-\[version\].tar.gz**
2. Create start script which should export environment variables used as explorer-frontend config:
2. Create start script which should export environment variables used as veil.tools website config:
```bash
# listen address, highly recommended to change it to localhost and hide nuxt server behind nginx proxy for example
HOST=0.0.0.0
# listen port
PORT=3000
# run in cluster mode
NITRO_PRESET=node-cluster
# url on which frontend available, used for SEO, meta tags etc.
BASE_URL=http://<ip>:3000
NUXT_BASE_URL=http://<ip>:3000
NUXT_BASE_URL_FRONTEND=http://<ip>:3000
# escaped json string with mirrors addresses (each should contain snapshot.json speedtest.min.bin and speedtest.bin, also sha256 hashes in txt and snapshots)
SNAPSHOT_MIRRORS="[{\"name\": \"Mainnet\", \"icon\": \"/images/networks/mainnet.svg\", \"mirrors\": [{\"name\": \"NA1\", \"path\": \"https://mirror-na1.veil.tools/\"}, {\"name\": \"NA2\", \"path\": \"https://mirror-na2.veil.tools/\"},{\"name\": \"EU1\", \"path\": \"https://mirror-eu1.veil.tools/\"}, {\"name\": \"EU2\", \"path\": \"https://mirror-eu2.veil.tools/\"}]}, {\"name\": \"Testnet\", \"icon\": \"/images/networks/testnet.svg\", \"mirrors\": [{\"name\": \"NA1\", \"path\": \"https://mirror-na1.veil.tools/testnet/\"}, {\"name\": \"NA2\", \"path\": \"https://mirror-na2.veil.tools/testnet/\"},{\"name\": \"EU1\", \"path\": \"https://mirror-eu1.veil.tools/testnet/\"}, {\"name\": \"EU2\", \"path\": \"https://mirror-eu2.veil.tools/testnet/\"}]}]"
NUXT_SNAPSHOT_MIRRORS="[{\"name\": \"Mainnet\", \"icon\": \"/images/networks/mainnet.svg\", \"mirrors\": [{\"name\": \"NA1\", \"path\": \"https://mirror-na1.veil.tools/\"}, {\"name\": \"NA2\", \"path\": \"https://mirror-na2.veil.tools/\"},{\"name\": \"EU1\", \"path\": \"https://mirror-eu1.veil.tools/\"}, {\"name\": \"EU2\", \"path\": \"https://mirror-eu2.veil.tools/\"}]}, {\"name\": \"Testnet\", \"icon\": \"/images/networks/testnet.svg\", \"mirrors\": [{\"name\": \"NA1\", \"path\": \"https://mirror-na1.veil.tools/testnet/\"}, {\"name\": \"NA2\", \"path\": \"https://mirror-na2.veil.tools/testnet/\"},{\"name\": \"EU1\", \"path\": \"https://mirror-eu1.veil.tools/testnet/\"}, {\"name\": \"EU2\", \"path\": \"https://mirror-eu2.veil.tools/testnet/\"}]}]"
# explorer backend endpoint
EXPLORER_BACKEND_ENDPOINT=https://explorer-api.veil-project.com
NUXT_EXPLORER_BACKEND_ENDPOINT=https://explorer-api.veil-project.com
# size of speedtest.min.bin
NETWORK_PRE_MEASURE_FILE_SIZE=51200
NUXT_NETWORK_PRE_MEASURE_FILE_SIZE=51200
# size of speedtest.bin
NETWORK_MEASURE_FILE_SIZE=3145728
COOKIE_SAVE_DAYS=90
NUXT_NETWORK_MEASURE_FILE_SIZE=3145728

node server/index.mjs
```
Expand Down
2 changes: 1 addition & 1 deletion VERSION.md
Original file line number Diff line number Diff line change
@@ -1 +1 @@
1.0.0
2.0.0
8 changes: 8 additions & 0 deletions Veil-Tools-Website.code-workspace
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
{
"folders": [
{
"path": "."
}
],
"settings": {}
}
6 changes: 3 additions & 3 deletions docs/compiling.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
# Website building
[NodeJS 16 and npm](https://nodejs.org/en/) required to build frontend.
[NodeJS 20 and npm](https://nodejs.org/en/) required to build frontend.

## Setup

Expand All @@ -9,9 +9,9 @@ Make sure to install the dependencies
npm install
```

## Upgrade nuxt3 to latest version
## Upgrade nuxt to latest version
```bash
npx nuxi upgrade
npx nuxi upgrade --force
```

## Check typings
Expand Down
14 changes: 8 additions & 6 deletions docs/configuration.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,15 +19,17 @@ set [key]=[value]
HOST=0.0.0.0
# listen port
PORT=3000
# run in cluster mode
NITRO_PRESET=node-cluster
# url on which frontend available, used for SEO, meta tags etc.
BASE_URL=http://<ip>:3000
NUXT_BASE_URL=http://<ip>:3000
NUXT_BASE_URL_FRONTEND=http://<ip>:3000
# escaped json string with mirrors addresses (each should contain snapshot.json speedtest.min.bin and speedtest.bin, also sha256 hashes in txt and snapshots)
SNAPSHOT_MIRRORS="[{\"name\": \"Mainnet\", \"icon\": \"/images/networks/mainnet.svg\", \"mirrors\": [{\"name\": \"NA1\", \"path\": \"https://mirror-na1.veil.tools/\"}, {\"name\": \"NA2\", \"path\": \"https://mirror-na2.veil.tools/\"},{\"name\": \"EU1\", \"path\": \"https://mirror-eu1.veil.tools/\"}, {\"name\": \"EU2\", \"path\": \"https://mirror-eu2.veil.tools/\"}]}, {\"name\": \"Testnet\", \"icon\": \"/images/networks/testnet.svg\", \"mirrors\": [{\"name\": \"NA1\", \"path\": \"https://mirror-na1.veil.tools/testnet/\"}, {\"name\": \"NA2\", \"path\": \"https://mirror-na2.veil.tools/testnet/\"},{\"name\": \"EU1\", \"path\": \"https://mirror-eu1.veil.tools/testnet/\"}, {\"name\": \"EU2\", \"path\": \"https://mirror-eu2.veil.tools/testnet/\"}]}]"
NUXT_SNAPSHOT_MIRRORS="[{\"name\": \"Mainnet\", \"icon\": \"/images/networks/mainnet.svg\", \"mirrors\": [{\"name\": \"NA1\", \"path\": \"https://mirror-na1.veil.tools/\"}, {\"name\": \"NA2\", \"path\": \"https://mirror-na2.veil.tools/\"},{\"name\": \"EU1\", \"path\": \"https://mirror-eu1.veil.tools/\"}, {\"name\": \"EU2\", \"path\": \"https://mirror-eu2.veil.tools/\"}]}, {\"name\": \"Testnet\", \"icon\": \"/images/networks/testnet.svg\", \"mirrors\": [{\"name\": \"NA1\", \"path\": \"https://mirror-na1.veil.tools/testnet/\"}, {\"name\": \"NA2\", \"path\": \"https://mirror-na2.veil.tools/testnet/\"},{\"name\": \"EU1\", \"path\": \"https://mirror-eu1.veil.tools/testnet/\"}, {\"name\": \"EU2\", \"path\": \"https://mirror-eu2.veil.tools/testnet/\"}]}]"
# explorer backend endpoint
EXPLORER_BACKEND_ENDPOINT=https://explorer-api.veil-project.com
NUXT_EXPLORER_BACKEND_ENDPOINT=https://explorer-api.veil-project.com
# size of speedtest.min.bin
NETWORK_PRE_MEASURE_FILE_SIZE=51200
NUXT_NETWORK_PRE_MEASURE_FILE_SIZE=51200
# size of speedtest.bin
NETWORK_MEASURE_FILE_SIZE=3145728
COOKIE_SAVE_DAYS=90
NUXT_NETWORK_MEASURE_FILE_SIZE=3145728
```
46 changes: 21 additions & 25 deletions docs/localization.md
Original file line number Diff line number Diff line change
@@ -1,37 +1,33 @@
# Localization
Localization files located at [/src/localization](/src/localization)

Each folder there should match language code, logical lingual blocks defined in **/src/localization/\[locale_code\]/index.ts**
Locale file defined in typescript files: **/src/localization/\[locale_code\].ts**
To be more readable, localization file splitted into logical blocks stored in folder that matches localization file name, for example **/src/localization/en/** for **/src/localization/en.ts**

**RTL** is currently not supported.
**RTL** support is currently not tested.

## Adding new locale
1. Copy **/src/localization/en** directory to **/src/localization/\[locale_code\]**
2. Change each **JSON** files inside newly copied directory with translation. JSON format is {\"key\": \"value\"}, you should translate only values. There also can be symbols like {block} - this are placeholders, they are replaced at runtime to actual values
3. Add definition of new locale inside **/nuxt.config.ts**
1. Copy **/src/localization/en.ts** file to **/src/localization/\[locale_code\].ts**
2. Copy **/src/localization/en/** directory to **/src/localization/\[locale_code\]/**
3. Change each **ts** files inside newly copied directory with translation. Those ts files usually export regular JSON with format {\"key\": \"value\"}, you should translate only values. There also can be symbols like {block} - placeholders, they are replaced at runtime to actual values
4. Add definition of new locale inside **/nuxt.config.ts**
```
locales: {
"en": "English",
"ru": "Русский",
// add here new locale in format "[locale_code]": "locale_display_name"
}
```
4. Add new locale to **vue-i18n.mjs**, replace \<locale\> with locale code
```bash
import translation_en from "@/localization/en";
import translation_ru from "@/localization/ru";
import translation_<locale> from "@/localization/<locale>";

export default async () => ({
locale: "en",
fallbackLocale: "en",
messages: {
en: translation_en,
ru: translation_ru,
<locale>: translation_<locale>
{
name: "English",
code: "en",
iso: "en-US",
file: "en.ts"
},
{
name: "Русский",
code: "ru",
iso: "ru-RU",
file: "ru.ts"
}
});
// add here new locale
}
```
5. Add **png** locale icon to **/src/public/images/locales/\[lang_code\].png**
5. Add **png** locale icon to **/src/public/images/locales/\[locale_code\].png**

width of icon should be **64px**, height can vary (country flags can be in different aspect ratios)
2 changes: 1 addition & 1 deletion docs/mirrors.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ Mirrors can be hosted using any webserver, we recommend **nginx**:
[nginx 1.18.0+](https://nginx.org/en/)


Root www folder (usually located at */var/www/html* on *nix systems) should contain snapshots packed into **ZIP** archive, near zip archive should be also **JSON** file with snapshots list and speedtest.bin and speedtest.min.bin files. For testnet new folder can be created at */var/www/html/testnet*
Root www folder (usually located at */var/www/html* on *nix systems) should contain snapshots packed into **ZIP** archive, near zip archive should be also **JSON** file with snapshots list and speedtest.bin/speedtest.min.bin files. For testnet new folder can be created at */var/www/html/testnet*

Create folder for testnet snapshots
```bash
Expand Down
24 changes: 13 additions & 11 deletions docs/setup.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,9 +3,9 @@
*To save file and close nano editor* press **CTRL+X** than **SHIFT+Y** than **ENTER**

## Setup
Required OS: **ubuntu 20.04+**
Required OS: **ubuntu 22.04+**

Recommended OS: **ubuntu 20.04.3 LTS**
Recommended OS: **ubuntu 22.04 LTS**

Required Software:
1. [NodeJS 16+](https://nodejs.org/en/)
Expand All @@ -21,7 +21,7 @@ sudo apt upgrade
## Install NodeJS 16
```bash
# add nodesource PPA
curl -fsSL https://deb.nodesource.com/setup_16.x | sudo bash -
curl -fsSL https://deb.nodesource.com/setup_20.x | sudo bash -
# install nodejs
sudo apt install nodejs
```
Expand All @@ -39,8 +39,8 @@ sudo mkdir /home/website/server/

## Download and unpack frontend build (change version in link and command to actual)
```bash
sudo wget https://github.com/Veil-Project/Veil-Tools-Website/releases/download/latest/veil.tools-1.1.0.tar.gz
sudo tar -xzf veil.tools-1.0.0.tar.gz -C /home/website/server/
sudo wget https://github.com/Veil-Project/Veil-Tools-Website/releases/download/latest/veil.tools-2.0.0.tar.gz
sudo tar -xzf veil.tools-2.0.0.tar.gz -C /home/website/server/
```

## Issue permissions for frontend
Expand All @@ -63,17 +63,19 @@ Add this content to opened file, change variables if required:
export HOST=0.0.0.0
# listen port
export PORT=3000
# run in cluster mode
NITRO_PRESET=node-cluster
# url on which frontend available, used for SEO, meta tags etc.
export BASE_URL=http://<ip>:3000
export NUXT_BASE_URL=http://<ip>:3000
export NUXT_BASE_URL_FRONTEND=http://<ip>:3000
# escaped json string with mirrors addresses (each should contain snapshot.json speedtest.min.bin and speedtest.bin, also sha256 hashes in txt and snapshots)
export SNAPSHOT_MIRRORS="[{\"name\": \"Mainnet\", \"icon\": \"/images/networks/mainnet.svg\", \"mirrors\": [{\"name\": \"NA1\", \"path\": \"https://mirror-na1.veil.tools/\"}, {\"name\": \"NA2\", \"path\": \"https://mirror-na2.veil.tools/\"},{\"name\": \"EU1\", \"path\": \"https://mirror-eu1.veil.tools/\"}, {\"name\": \"EU2\", \"path\": \"https://mirror-eu2.veil.tools/\"}]}, {\"name\": \"Testnet\", \"icon\": \"/images/networks/testnet.svg\", \"mirrors\": [{\"name\": \"NA1\", \"path\": \"https://mirror-na1.veil.tools/testnet/\"}, {\"name\": \"NA2\", \"path\": \"https://mirror-na2.veil.tools/testnet/\"},{\"name\": \"EU1\", \"path\": \"https://mirror-eu1.veil.tools/testnet/\"}, {\"name\": \"EU2\", \"path\": \"https://mirror-eu2.veil.tools/testnet/\"}]}]"
export NUXT_SNAPSHOT_MIRRORS="[{\"name\": \"Mainnet\", \"icon\": \"/images/networks/mainnet.svg\", \"mirrors\": [{\"name\": \"NA1\", \"path\": \"https://mirror-na1.veil.tools/\"}, {\"name\": \"NA2\", \"path\": \"https://mirror-na2.veil.tools/\"},{\"name\": \"EU1\", \"path\": \"https://mirror-eu1.veil.tools/\"}, {\"name\": \"EU2\", \"path\": \"https://mirror-eu2.veil.tools/\"}]}, {\"name\": \"Testnet\", \"icon\": \"/images/networks/testnet.svg\", \"mirrors\": [{\"name\": \"NA1\", \"path\": \"https://mirror-na1.veil.tools/testnet/\"}, {\"name\": \"NA2\", \"path\": \"https://mirror-na2.veil.tools/testnet/\"},{\"name\": \"EU1\", \"path\": \"https://mirror-eu1.veil.tools/testnet/\"}, {\"name\": \"EU2\", \"path\": \"https://mirror-eu2.veil.tools/testnet/\"}]}]"
# explorer backend endpoint
export EXPLORER_BACKEND_ENDPOINT=https://explorer-api.veil-project.com
export NUXT_EXPLORER_BACKEND_ENDPOINT=https://explorer-api.veil-project.com
# size of speedtest.min.bin
export NETWORK_PRE_MEASURE_FILE_SIZE=51200
export NUXT_NETWORK_PRE_MEASURE_FILE_SIZE=51200
# size of speedtest.bin
export NETWORK_MEASURE_FILE_SIZE=3145728
export COOKIE_SAVE_DAYS=90
export NUXT_NETWORK_MEASURE_FILE_SIZE=3145728

node server/index.mjs
```
Expand Down
Loading

0 comments on commit 62e76d0

Please sign in to comment.