You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Slixe 38afd52606
Merge pull request #1 from Slixe/dependabot/npm_and_yarn/dero-benchmark-vue/websocket-extensions-0.1.4
3 months ago
dero-benchmark-vue Bump websocket-extensions from 0.1.3 to 0.1.4 in /dero-benchmark-vue 3 months ago
gradle/wrapper Initial commit 6 months ago
src/main RateLimit + Memory added in Benchmark + Saving users 4 months ago
.gitignore RateLimit + Memory added in Benchmark + Saving users 4 months ago
README.md Update README.md 4 months ago
build.gradle update version 4 months ago
gradlew Initial commit 6 months ago
gradlew.bat Initial commit 6 months ago
settings.gradle Update gradle project name 6 months ago

README.md

DERO Benchmarks

DERO Benchmarks allows you to list each user’s benchmarks. Admins can manually confirm/delete each user’s benchmarks from a dedicated page.

The backend part uses the Paladin Framework and is made in Java.

The frontend part uses VueJS Framework and Vuetify and can be found in dero-benchmark-vue folder.

How to start

To start, you will need to build the backend and frontend separately.

Backend

First, you must have a java version higher or equal to Java 8. To compile the backend, do the following command:

gradlew fatJar

The executable jar file will be found in build/libs/ folder. To execute it, all you’ll have to do is:

java -jar dero-benchmarks.jar

Edit the config.json file to put the port on which the server should listen.

Create User

Edit the file admins.json, an example is created in it. If you want the application to hash your password, replace "hashedPassword" with "password".

Example of admins.json:

[
  {
    "username": "Slixe",
    "password": "password123",
    "salt": "salt123"
  }
]

Enable SSL

There are two ways to enable SSL on DERO Benchmarks:

  • You can make a reverse proxy using NGINX (or another one) for example.
  • You can directly activate it in the config.json file

For the second solution, you will need to generate a Java keystore file (.jks). To create a java keystore file from an already existing certificate, please refer here

For more examples: here

once this step is done, just configure the “config.json” file.

{
  "port": 8080,
  "enableSSL": true,
  "keystoreFile": "keystore.jks",
  "keystorePassword": "",
  "secret": ""
}

keystoreFile is the path to your file. If it is in the same folder as the application, you can simply specify the file name as above.

keystorePassword is the password needed for the keystore file.

secret is used by the Session Manager to sign, verify that the auth token provided is valid.

Frontend

First you will need to change the value of Vue.prototype.$api with your API address (so the IP address/domain name where your backend is running) in the src/main.js file.

Then, to build the frontend:

yarn run build

The result will be available in the dist folder and all you have to do is move its content to a web server.

Screenshots

Some screenshots of the current design.

Index

Submit

Login

Unconfirmed Benchmarks (admin page)

DERO

dERokevAZEZVJ2N7o39VH81BXBqX9ojtncnPTDMyiVbmYiTXQY93AUCLcor9xsWCKWhYy25ja89ikZWXWab9kXRB7LYfUmbQyS